迷你JavaWeb项目 紧接着《IDEA新建Maven JavaWeb项目》,我们使用Mybatis+Spring+SpringMVC来完成一个迷你项目: 普通用户可以注册登录,管理员可以管理普通用户。
持久层 新建数据库 1、使用navicat新建mysql数据库,数据库名为pandawork,字符集选择utf8–UTF-8 Unicode,排序规则选择utf8_general_ci。
2、新建表t_user,包括id、username、password三个字段。
1 2 3 4 5 6 7 DROP TABLE IF EXISTS `t_user` ;CREATE TABLE `t_user` ( `id` int(8 ) NOT NULL AUTO_INCREMENT, `username` varchar(16 ) NOT NULL , `password` varchar(16 ) NOT NULL , PRIMARY KEY (`id` ) ) ENGINE=MyISAM DEFAULT CHARSET=utf8;
mybatis的maven配置 在pom.xml中,添加:
1 2 3 4 5 <dependency > <groupId > org.mybatis</groupId > <artifactId > mybatis</artifactId > <version > 3.4.4</version > </dependency >
连接mysql 1、在pom.xml中,添加:
1 2 3 4 5 6 <dependency > <groupId > mysql</groupId > <artifactId > mysql-connector-java</artifactId > <version > 5.1.30</version > </dependency >
2、右键resources文件夹,新建文件mybatis-config.xml,内容如下:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 <?xml version="1.0" encoding="UTF-8" ?> <!DOCTYPE configuration PUBLIC "-//mybatis.org//DTD Config 3.0//EN" "http://mybatis.org/dtd/mybatis-3-config.dtd" > <configuration > <environments default ="development" > <environment id ="development" > <transactionManager type ="JDBC" /> <dataSource type ="POOLED" > <property name ="driver" value ="com.mysql.jdbc.Driver" /> <property name ="url" value ="jdbc:mysql://localhost:3306/pandawork" /> <property name ="username" value ="root" /> <property name ="password" value ="mysql" /> </dataSource > </environment > </environments > <mappers > <mapper resource ="com/voidking/pandawork/mapper/user.mapper.xml" /> </mappers > </configuration >
3、main/java文件夹下,右键com.voidking.pandawork,新建包util。
4、右键包uitl,新建连接数据库的类ConnetDB.java,内容如下:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 package com.voidking.pandawork.util;import org.apache.ibatis.io.Resources;import org.apache.ibatis.session.SqlSessionFactory;import org.apache.ibatis.session.SqlSessionFactoryBuilder;import java.io.IOException;import java.io.InputStream;public class ConnectDB { private static volatile ConnectDB instance=null ; private SqlSessionFactory sqlSessionFactory=null ; private ConnectDB () { try { String resource = "mybatis-config.xml" ; InputStream inputStream = Resources.getResourceAsStream(resource); sqlSessionFactory = new SqlSessionFactoryBuilder ().build(inputStream); } catch (IOException e) { e.printStackTrace(); } } public static ConnectDB getInstance () { if (instance==null ){ synchronized (ConnectDB.class){ if (instance==null ){ instance=new ConnectDB (); } } } return instance; } public SqlSessionFactory getSqlSessionFactory () { return sqlSessionFactory; } }
entity 1、main/java文件夹下,右键com.voidking.pandawork,新建包entity。 2、右键包entity,新建类User.java。
mapper 1、main/java文件夹下,右键com.voidking.pandawork,新建包mapper。右键包mapper,新建接口UserMapper.java。 2、main/resources文件夹下,右键com.voidking.pandawork,新建包mapper。右键包mapper,新建文件user.mapper.xml。
service 1、main/java文件夹下,右键com.voidking.pandawork,新建包service。 2、右键包service,新建接口UserService.java。 3、右键包service,新建包impl。 4、打开UserService.java,鼠标光标聚焦到“public interface UserService”一行,按下alt+enter(或者选择code,generate),选择com.voidking.pandawork.service.impl包,新建接口实现文件UserServiceImpl.java。
test 打开UserServiceImpl.java,鼠标光标聚焦到“public class UserServiceImpl implements UserService”一行,按下alt+enter,选择com.voidking.pandawork包,新建测试文件UserServiceTest.java。这样,就在test/java/com.voidking.pandawork包中生成了测试文件。
业务逻辑层 spring包 在pom.xml中,添加springmvc最小化依赖:
1 2 3 4 5 6 7 8 9 10 11 <dependency > <groupId > org.springframework</groupId > <artifactId > spring-context</artifactId > <version > 4.3.8.RELEASE</version > </dependency > <dependency > <groupId > org.springframework</groupId > <artifactId > spring-webmvc</artifactId > <version > $ {springframework.version} </version > </dependency >
applicationContext.xml 右键main/resources文件夹,新建applicationContext.xml,不配置任何bean,内容如下:
1 2 3 4 5 6 7 8 9 10 11 12 13 <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:aop="http://www.springframework.org/schema/aop" xmlns:context="http://www.springframework.org/schema/context" xmlns:tx="http://www.springframework.org/schema/tx" xsi:schemaLocation="http://www.springframework.org/schema/beans http: http: http: http: http: http: http: </beans>
springmvc-servlet.xml 右键main/resources文件夹,新建springmvc-servlet.xml,内容如下:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 <?xml version="1.0" encoding="UTF-8"?> <beans xmlns ="http://www.springframework.org/schema/beans" xmlns:xsi ="http://www.w3.org/2001/XMLSchema-instance" xmlns:mvc ="http://www.springframework.org/schema/mvc" xmlns:context ="http://www.springframework.org/schema/context" xmlns:aop ="http://www.springframework.org/schema/aop" xmlns:tx ="http://www.springframework.org/schema/tx" xsi:schemaLocation ="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-4.0.xsd http://www.springframework.org/schema/mvc http://www.springframework.org/schema/mvc/spring-mvc-4.0.xsd http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-4.0.xsd http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop-4.0.xsd http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-4.0.xsd" > <context:component-scan base-package ="com.voidking.pandawork.controller" /> </beans >
web.xml 打开main/webapp/WEB-INFO/web.xml,修改内容如下:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 <?xml version="1.0" encoding="UTF-8"?> <web-app version ="3.1" xmlns ="http://xmlns.jcp.org/xml/ns/javaee" xmlns:xsi ="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation ="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd" > <context-param > <param-name > contextConfigLocation</param-name > <param-value > classpath:applicationContext.xml</param-value > </context-param > <listener > <listener-class > org.springframework.web.context.ContextLoaderListener </listener-class > </listener > <servlet > <servlet-name > SpringMVC</servlet-name > <servlet-class > org.springframework.web.servlet.DispatcherServlet</servlet-class > <init-param > <param-name > contextConfigLocation</param-name > <param-value > classpath:springmvc-servlet.xml</param-value > </init-param > <load-on-startup > 1</load-on-startup > </servlet > <servlet-mapping > <servlet-name > SpringMVC</servlet-name > <url-pattern > /</url-pattern > </servlet-mapping > </web-app >
helloworld 1、main/java文件夹下,右键com.voidking.pandawork,新建包controller。右键包controller,新建类HelloWorld.java,内容如下:
1 2 3 4 5 6 7 8 9 10 11 12 13 package com.voidking.pandawork.controller;import org.springframework.stereotype.Controller;import org.springframework.web.bind.annotation .RequestMapping;import org.springframework.web.bind.annotation .ResponseBody;@Controller public class HelloWorld { @RequestMapping("/hello" ) public @ResponseBody String test() { return "hello, world! This com from spring!" ; } }
2、部署项目到tomcat的8080端口,访问http://localhost:8080/hello
,即可看到“hello, world! This com from spring!”。
迷你JavaWeb项目实现 具体配置和代码实现请自行阅读代码:https://github.com/voidking/pandawork-start
书签 mybatis文档http://www.mybatis.org/mybatis-3/zh/index.html
SpringMVC+Spring4+Mybatis3集成,开发简单Web项目+源码下载http://blog.csdn.net/jiuqiyuliang/article/details/45132493
手把手教你搭建SpringMVC——最小化配置http://www.cnblogs.com/xing901022/p/5240044.html