|
1.整体结构
2.准备工作
--Mysql 5.6
CREATE wolf;create userid AUTO_INCREMENT keyname (25) nullpwd (20) nullcreate_time )insert usernamevalues"wangxin""123""2014-02-14"insert usernamevalues"Tom""123456""2014-02-14"insert usernamevalues"Jack""123""2014-02-14"insert usernamevalues"Bob""123""2014-02-14"
我们先文字,后图吧
,细心的你,看完所有内容会发现,这里的东西在哪里也有哦,别想多了,肯定在这里,你猜猜猜..
1.驱动:mysql-connector-java-5.1.7-bin.jar
jstl.jar
3.spring 的
spring-beans-4.0.0.M2.jar
spring-core-4.0.0.M2.jar
spring-expression-4.0.0.M2.jar
spring-test-4.0.0.M2.jar
4.mybatis 的
log4j-1.2.16.jar
5.以及spring-depend
cglib-nodep-2.1_3.jar
6.web 相关的
spring-webmvc-4.0.0.RELEASE.jar
下面是jar包在项目中的结构图
3.项目代码及简析
User.java
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172com.springmvc_mybatis.bean; java.io.Serializable;java.util.Date;org.springframework.format.annotation.DateTimeFormat; class implements private final serialVersionUID = 1L;private String name;private (pattern = )private User() {super User(String name, String password) {super .name = name;this User(Integer id, String name, String password, Date time) {super .id = id;this .password = password;this Integer getId() {return void .id = id;} public name;} public setName(String name) {this String getPassword() {return void .password = password;} public time;} public setTime(Date time) {this String toString() {return + id + + name + + password+ + time + ;}接口(如果你用了mappers 那么接口以及配置文件最后都带有Mapper,且名字一致)
UserMapper.java
1234567891011121314com.springmvc_mybatis.mapper; java.util.List;org.apache.ibatis.annotations.Param;com.springmvc_mybatis.bean.User; public UserMapper {// value 必须与Bean 属性一致!User login((value = ) String name,@Param"password" }version"1.0" =?>namespace"com.springmvc_mybatis.mapper.UserMapper" resultMap =id"userResult" result =property"id" result =property"name" result =property"password" result =property"time" resultMap select =resultMap"userResult" select select =resultMap"userResult" select>下面该干嘛了?╮(╯▽╰)╭好吧,我们先来配置下在木有服务器的环境下,看看Mybatis是否能正确运行。
哦是她,
beans_wolf.xml 哈哈,wolf 哦,够那个啥吧。。。
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748=encoding"UTF-8"xmlns"http://www.springframework.org/schema/beans" xmlns:xsi"http://www.w3.org/2001/XMLSchema-instance"xmlns:p"http://www.springframework.org/schema/p" xmlns:context"http://www.springframework.org/schema/context"xmlns:tx"http://www.springframework.org/schema/tx"xsi:schemaLocation="http://www.springframework.org/schema/beanshttp://www.springframework.org/schema/beans/spring-beans-3.2.xsdhttp://www.springframework.org/schema/contexthttp://www.springframework.org/schema/context/spring-context-3.2.xsdhttp://www.springframework.org/schema/txhttp://www.springframework.org/schema/tx/spring-tx-3.2.xsd">id"datasource" =>name"driverClassName" =/>name"url" =/>name"username" =/>name"password" =/>> bean =class"org.mybatis.spring.SqlSessionFactoryBean" property =ref"datasource" property =value"com.springmvc_mybatis.bean" property =value"classpath:mybatis-config.xml" bean bean =>name"basePackage" =/>name"sqlSessionFactory" =/>> bean =class"org.springframework.jdbc.datasource.DataSourceTransactionManager" property =ref"datasource" bean tx:annotation-driven =/>beansSpring 基本配置都在上面咯,数据库如果想读入配置文件的话,自己新建属性文件配置下下了
哦,差点过了,现在我们就可以来测试下咯,后面的mvc配置主要是为web服务的哈,不急!!
package import import import import import import import import @RunWithclass@ContextConfiguration"/beans_wolf.xml"public TestSimpleMyBatis { @Autowiredprivate void void "wangxin""123456" (loginExit == ) {System.out.println();} {System.out.println(loginExit);System.out.println();}}如果你成功了,恭喜你可以继续咯!如果出现问题那么尝试在配置一个哈,
Let`s go...
version"1.0" =?>beans = =xmlns:context"http://www.springframework.org/schema/context"xmlns:mvc"http://www.springframework.org/schema/mvc"xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.0.xsdhttp://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-3.0.xsdhttp://www.springframework.org/schema/mvc http://www.springframework.org/schema/mvc/spring-mvc-3.0.xsd"> base-package"com.springmvc_mybatis.controller" mvc:annotation-driven bean = =>name"prefix" =/>name"suffix" =/>>beansmybatis-config.xml
123456789101112131415161718=encoding"UTF-8" PUBLIC "-//mybatis.org//DTD Config 3.0//EN""http://mybatis.org/dtd/mybatis-3-config.dtd"> configuration typeAliases typeAlias =alias"User" >>resource"com/springmvc_mybatis/mapper/userMapper.xml" mappers>UserController.java
12345678910111213141516171819202122232425262728293031323334353637383940414243444546com.springmvc_mybatis.controller; java.util.List; javax.servlet.http.HttpServletRequest; org.springframework.beans.factory.annotation.Autowired;org.springframework.stereotype.Controller;org.springframework.ui.Model;org.springframework.web.bind.annotation.RequestMapping; com.springmvc_mybatis.bean.User;com.springmvc_mybatis.mapper.UserMapper; @RequestMapping"/user"public UserController { @Autowiredprivate ()public "username" "password" "login" (user_login == ) {System.out.println();return ;} {model.addAttribute(, user_login);return ;}} @RequestMapping"/list" String getAllUsers(Model model) {List users = usermapper.getAllUsers();model.addAttribute(, users);System.out.println(users);return ; }下面我们该弄什么咯???先给出结构图吧,挺简单的!
你,你,看到了神马
,jre8,Tomcat 8 ,
index.jsp
1"/WEB-INF/test/login.jsp"
这么长啊,我的神。。。login.jsp
1234567891011121314151617181920212223242526"java" "text/html; charset=UTF-8"pageEncoding=%>"-//W3C//DTD HTML 4.01 Transitional//EN" >"Content-Type" "text/html; charset=UTF-8"loginmethod=>>用户名:type=name=>密码:type=name=>name=>登录contentType= "UTF-8""http://www.w3.org/TR/html4/loose.dtd"content=> "red" "list.action"fail.jsp
123456789101112131415161718"java" "text/html; charset=UTF-8"pageEncoding=%>"-//W3C//DTD HTML 4.01 Transitional//EN" >"Content-Type" "text/html; charset=UTF-8"Insert title here>fail login!
>the LoginPage!
contentType= "UTF-8"uri=%>"fmt" "http://java.sun.com/jsp/jstl/fmt"uri=%>"-//W3C//DTD HTML 4.01 Transitional//EN" >"Content-Type" "text/html; charset=UTF-8"Insert title heretest=>>没有员工信息!>test=>cellpadding=cellspacing=>NumIdNameCreate_TimePassword>OPvar"user" "s" "${user.time}" "yyyy-MM-dd" "return false"href=>color=>edit "${pageContext.request.contextPath}/user/delete/${user.id}.action" "blue"delete if
>goto login好像少了个吧
web.xml
123456789101112131415161718192021222324252627=encoding"UTF-8"xmlns:xsi"http://www.w3.org/2001/XMLSchema-instance"xmlns"http://java.sun.com/xml/ns/javaee"xsi:schemaLocation"http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"id"WebApp_ID" =>>Demo_SpringMVC_MyBatis>>>contextConfigLocation>>classpath:beans_wolf.xml>>>>org.springframework.web.context.ContextLoaderListener>>>>springDispatcherServlet>>org.springframework.web.servlet.DispatcherServlet>>>contextConfigLocation>>classpath:applicationContext-mvc.xml>>>1>>>>springDispatcherServlet>>*.action>>web-app至此完工了,终于!
下面简单说下项目中的xml文件哦
1.Spring基本的ApplicationContext.xml 本例中用的是 beans_wolf.xml(名字一定要注意,尽量用前面的)配置了:其中配置了数据库的具体信息,所以不在另外用属性文件了! 3.mybatis-config.xml 这个具体配置根据你的实际来弄! context-param param-nameparam-name param-valueparam-value context-param listener listener-class listener-class listener servlet servlet-nameservlet-name servlet-class servlet-class init-param param-nameparam-name param-valueparam-value init-param load-on-startupload-on-startup servlet servlet-mapping servlet-nameservlet-name url-patternurl-pattern>HTTP Status 500 - Request processing failed; nested exception is java.lang.IllegalArgumentException:
id"sqlSessionFactory" =>property =ref"datasource"name"typeAliasesPackage" =/>property =value"classpath:mybatis-config.xml" >Mapped Statements collection does not contain value for后面是什么类什么方法之类的: 1、mapper.xml中没有加入namespace !!!!3、mapper.xml没有加入到mybatis-config.xml中(即总的配置文件),例外:配置了mapper文件的包路径的除外 !!!5.java文件和xml文件的名称不一致 !另外:jsp 文件的位置要特别注意! index,一般在WebContent下!!!
5.完整Demo项目下载地址
Demo_SpringMVC_MyBatis 完整登录及list查询,无错误,几经验证!共同学习!
SpringMVC MyBatis 相关jar包下载 |
|
|