这是我自己根据所学的知识所创建的一个web项目。主要是用web网页来修改sqlserver数据信息。
主要用到了maven,mybatis,tomcat等工具
首先配置的就是maven,主要配置的就是本地仓库,跟阿里的云路径。mybatis的话直接用mavne引入相关的依赖就可以了。Tomcat配置的时候你要与jkd的版本相对应,运行控制台入过是乱码就是配置一下,csdn上有很多配置Tomcat 的文章,很详细。
接下来说一下我遇到的问题:
配置完Tomcat的时候,点击tomcat Bin目录下的startup启动Tomcat服务器的时候一闪而退。
我搜索的文章上说的是环境变量路径没有配置,因为我是在服务器上创建的目录所以说我很确定我java 的环境变量是配置了的,但是为了确保我还是看了一下。发现环境变量确实是配了,但是我们公司的系统比较老用的jdk还是1.6,之前我自己装过一个1.8的就把变量地址改成了1.8,闪退的问题就解决了。
配置完tomacat之后就可以用idea创建web项目了,我这里是用的maven下的web模板创建的项目,就可以不用idea里面配置Tomcat了。详细的可以看黑马程序web入门里面的tomcat的配置教程里面讲的很详细。
创建完项目之后,就可以使用mavne进行加载依赖导包了,因为平常学习都是加载的mysql,到时我这次的这个项目是基于sqlserver的,找这个依赖就花了我半个小时。咱就说这sqlserver的文档也太少了。我就把用的依赖和对应的版本发出来了。sqlserver 的版本根据你们的数据库自己设置,但是要主意的是这三个版本要对应,不要差太远,否则项目会运行不起来的。
<!-- mybatis -->
<dependency>
<groupId>org.mybatis</groupId>
<artifactId>mybatis</artifactId>
<version>3.5.5</version>
</dependency>
<!-- sqlserver-->
<dependency>
<groupId>com.microsoft.sqlserver</groupId>
<artifactId>sqljdbc4</artifactId>
<version>4.0</version>
</dependency>
<!-- Tomcat -->
<build>
<plugins>
<plugin>
<groupId>org.apache.tomcat.maven</groupId>
<artifactId>tomcat7-maven-plugin</artifactId>
<version>2.2</version>
</plugin>
</plugins>
</build>
接下来就是配置mybatis-config.xml文件了。我想说的就是在配置的途中数据库的驱动,URL,账号,密码都是正确的但是就是连接不上数据库。后来我就把数据库的连接信息写到properties通过<properties resource="jdbc.properties"/> 这个 标签来进行引入..
接下里写sql的映射文件跟DAO层了,注意在mybatis中mappers的映射文件路径一定要跟xxx.xml文件一样,否则会连不上的,因为我用的是起别名的方式,所以说只需要填写路径就可以了。
然后写mapperDAO层,这里采用注解开发模式。可能刚开始写项目,这里就没用@ResultMap()@ResultType()来给sql起别名了。
还有一点,我有必要说一下。sql映射文件中的命名空间要写DAO的全类名,你这里也可以使用起别名的方式。但是我还是用了老套的方式,毕竟刚开始写还是稳定比较好。
然后我把获取 sqlSession对象工程的代码封装成了一个工具类方便以后调用。DAO层就布置完了。
接着我写了一个service业务逻辑,对应dao层的mapper进行封装和链接。因为是要实现的是订单复用的功能,所有只写一个用户登录的DAO,和订单表的DAO,后续有新的需求可以新增新的DAO,和service。
然后就是前端页面跟Servlet的实现了。前端的页面我是照着这段时间学的视频里面的前端文件进行改进,然后转成自己所需要的。包括里面的css文件等。后面我会把源码放出来。
配置完前端页面之后就,就开始写前后端交互的功能了。我这里选择继承tomcat提供能HttpServlet的实现类。
我这里主要说一下注意事项。
如果报404的异常,我这里主要出现了像个错误。一是前端页面跳转访问servlet的地址填写错误。
注意这两个地址一定要对应。
说到这里我说一下前端页面虚拟目录的问题。有时候我们可能会粘其他文章的pom配置文件进行使用,但是一定要pom文件中的
<groupId>org.example</groupId>
<artifactId>HyDdFy</artifactId>
<version>1.0-SNAPSHOT</version> 这个。否则你的虚拟地址是错误的就会访问不到你的项目。
第二个问题就是你的servlet进行转发的时候jsp的地址也要写对,文件不要写错了。因为刚开始写项目,我中间就犯过这种错误。找了挺久的原因
写完各个跳转功能之后我们就可以对项目进行打包。放到tomcat 的webapps文件里面进行访问了。因为我用的是maven所以可以对其直接打包。
打完包之后在我们项目路径下的target文件及里面会有一个war包。
我们找到这个war包重命名一下放到tomacat的webapps里面。一定要重名war包跟我们的虚拟目录的名字一样。
然后部署到服务器上,打开tomcat服务器就行了。
如果在浏览器进行访问servlet层进行跳转jsp页面的时候出现,让你下载文件的问题。
response.setContentType("text/html;charset=UTF-8");
就是这个问题了,里面要写成"text/html;charset=UTF-8"。这个方法的作用就是,区分不同种类的数据,并根据不同的MIME调用浏览器内不同的程序嵌入模块来处理相应的数据。
下面是成品给你们看一下。
我把源码放到我的资源里面了。你们可以去看看。