ssm开发经历汇总

Posted dmzxxmeng

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了ssm开发经历汇总相关的知识,希望对你有一定的参考价值。

1、@webfilter注解配置的filter中用到某个bean

自定义的filter需要实现filter接口,并重写init()、doFilter()、destroy()方法

因为spring框架是先加载filter类,再加载其他bean,所以,若在自定义filter中的bean采用自动装配方法(@Autowired)或者是在init()方法中调用(ApplicationContext) context.getBean(),此时的bean由于还没有开始加载,所以filter中的对bean的引用为Null, 若在之后的doFilter()中调用该bean的方法,将会抛出NullPointerException异常;

解决方案:对bean的装配在调用时才进行装配,因为所有调用需在所有bean实例化之后才能进行。所以待使用时配备bean,此时的bean已经加载完成,能通过(ApplicationContext) context.getBean()获得该bean的唯一实例。

 

2、ip过滤问题

在写ip过滤代码后,需要使用多个ip进行过滤测试,第一个想到的是用docker容器,因为docker能方便地产生多个容器,且会自动为不同容器分配的唯一ip,这样满足多个ip测试代码的需求。

但是,容器内程序访问外部地址时需要进行NAT转换,外部程序是无法访问容器ip的,容器的ip相当于对内网ip的再分配,它们对外的源地址ip统一为宿主机的ip,只不过每一个容器ip对应不同的服务端口。这样,就不能满足多ip测试的需求了。

 

3、发包和接包(HTTP请求)工具

进行后端开发工作,最常做的事情当然是发包和接包了,如果有图形界面的话,Postman无疑是个很好的选择。

但是,如果没有图形界面的环境,比如,需要在docker容器中进行发包和接包,curl命令则非常好用。

若发送post请求,格式为curl -X POST url ( PS: 其实get和post在url中都可以携带明文请求参数 ) -d "query1=what&query2=what..." (这是POST请求的非明文请求参数);

如果想用POST发送JSON文件请求,需要加上命令参数 -H "Content-Type:application/json" , POST的请求格式也变成JSON格式;

例如,curl -H "Content-Type:application/json" -X POST http://localhost:8080/api/city?query1=test1&query2=test2&query3=test3 -d ‘ "id":"3", "provinceId":"3", "cityName":"zhuhai", "description":"live in zhuhai"‘

 

以上是关于ssm开发经历汇总的主要内容,如果未能解决你的问题,请参考以下文章

IDEA系列新手上路(作者使用经历,长篇预警)

阿里内部全新21版SpringBoot开发手册,GitHub上Star数已破120K+

一位“失业”80后的经历,残酷的人生,让我看到了背后这一幕…

JAVA面试经历汇总

apiclound studio 2 开发经历

一只猪的 Scrum 开发经历