1.查看当前端口被哪个进程占用了(进入到CMD中)
中文乱码问题
中文乱码问题
在使用Get请求进行访问是由于地址中参数的编码问题可能会造成中文乱码问题,可以使用如下几种方式进行解决
- tomcat的server.xml文件中,在Connector 节点中添加useBodyEncodingForURI=”true” 属性 使用请求体的编码,然后在获取请求内容之前使用request.setCharacterEncoding(“UTF-8”)
- tomcat的server.xml文件中,在Connector 节点中添加URIEncoding=”UTF-8”属性
- tomcat的get请求默认使用ISO-8859-1来编码,可以在获取的时候进行转码,new String(request.getParameter(“name”).getBytes(“ISO-8859-1”),”UTF-8”)
单元测试数据库回滚问题
问题现象: 在进行单元测试时,测试执行成功,可是数据库中的数据没变
问题解决:单元测试自动回滚,需要加上注解Rollback(false)
多个请求使用同一个Servlet
表单重复提交
post请求体内容无法重复获取
post请求体内容无法重复获取
为什么会无法重复读取呢?
以tomcat为例,在进行请求体读取时实际底层调用的是org.apache.catalina.connector.Request的getInputStream()方法,而该方法返回的是CoyoteInputStream输入流
1 | public ServletInputStream getInputStream() throws IOException { |
在使用CoyoteInputStream进行读取时
1 | public int read(byte[] b, int off, int len) throws IOException { |
而流读取完毕都会进行close,这个流close之后,close状态就置为了true,所以导致流无法进行二次读取
hibernate异常org.hibernate.NonUniqueObjectException
异常报错:org.hibernate.NonUniqueObjectException: a different object with the same identifier value was already associated with the session:
启动Tomcat时出现其他无关的项目
解决方案:
应该是tomcat以前部署的项目有残留,删除掉webapps里面的其他项目,删除掉work文件夹下Catalina下localhost文件夹里其他的项目,删除掉conf文件夹下Catalina下localhost文件夹下的其他项目配置,最后如果还是不行,查看一下conf下的server.xml里是不是有其他项目残留的配置
idea多模块启动
Hello World
测试页面,无需关心
Welcome to Hexo! This is your very first post. Check documentation for more info. If you get any problems when using Hexo, you can find the answer in troubleshooting or you can ask me on GitHub.