初识Mybatis整合______整合教程(Spring+springMVC+Mybatis)

一:刚接触Mybatis已经一周了,刚刚学会整合,现在做一个简单的整合,来记录一

1、基本概念


1.1、Spring


        Spring是一个开源框架,Spring是于2003 年兴起的一个轻量级的Java 开发框架,由Rod Johnson 在其著作Expert One-On-One J2EE Development and Design中阐述的部分理念和原型衍生而来。它是为了解决企业应用开发的复杂性而创建的。Spring使用基本的JavaBean来完成以前只可能由EJB完成的事情。然而,Spring的用途不仅限于服务器端的开发。从简单性、可测试性和松耦合的角度而言,任何Java应用都可以从Spring中受益。 简单来说,Spring是一个轻量级的控制反转(IoC)和面向切面(AOP)的容器框架。


1.2、SpringMVC

     

        Spring MVC属于SpringFrameWork的后续产品,已经融合在Spring Web Flow里面。Spring MVC 分离了控制器、模型对象、分派器以及处理程序对象的角色,这种分离让它们更容易进行定制。


1.3、MyBatis


       MyBatis 本是apache的一个开源项目iBatis, 2010年这个项目由apache software foundation 迁移到了google code,并且改名为MyBatis MyBatis是一个基于Java持久层框架。iBATIS提供的持久层框架包括SQL MapsData Access ObjectsDAOMyBatis 消除了几乎所有的JDBC代码和参数的手工设置以及结果集的检索。MyBatis 使用简单的 XML或注解用于配置和原始映射,将接口和 Java POJOsPlain Old Java Objects,普通的 Java对象)映射成数据库中的记录。

   

2.1 

(1) 导入相关包,包结构如下图所示:包和代码会在后面上传

初识Mybatis整合______整合教程(Spring+springMVC+Mybatis)_第1张图片


工程目录

初识Mybatis整合______整合教程(Spring+springMVC+Mybatis)_第2张图片


 (2) 配置spring:修改src/applicationContext-mybatis.xml文件,结果如下所示:



  
      
           
          
          
           
          
        
	    
	    
	    
	    
	 	 

          
         
           
          
          
              
         
         
          
          
              
              
         
		  
		
          
              
        
         
    
            
      
(3) 在src下添加jdbc.properties
driverClassName=com.mysql.jdbc.Driver
url=jdbc:mysql://localhost:3306/user?characterEncoding=utf-8
uname=root
password=123123
(4) 在com.jin.entity包下添加实体类,实体类对应于数据表,其属性与数据表相同或多于数据表。

package com.jin.entity;

public class User {
	private Integer id;
	private String name;
	private String pwd;
	public Integer getId() {
		return id;
	}
	public void setId(Integer id) {
		this.id = id;
	}
	public String getName() {
		return name;
	}
	public void setName(String name) {
		this.name = name;
	}
	public String getPwd() {
		return pwd;
	}
	public void setPwd(String pwd) {
		this.pwd = pwd;
	}
	
	
}


(5) 配置mybatis-config.xml





	
		
	
	
		  
	
	

(6)配置springMVC   配置spring-servlet.xml





	
	

	
	
		
		
	
	












<7>log4j.properties

### \u8BBE\u7F6ELogger\u8F93\u51FA\u7EA7\u522B\u548C\u8F93\u51FA\u76EE\u7684\u5730 ###
log4j.rootLogger=debug,stdout,logfile


### \u628A\u65E5\u5FD7\u4FE1\u606F\u8F93\u51FA\u5230\u63A7\u5236\u53F0 ###
log4j.appender.stdout=org.apache.log4j.ConsoleAppender
#log4j.appender.stdout.Target=System.err
log4j.appender.stdout.layout=org.apache.log4j.SimpleLayout


### \u628A\u65E5\u5FD7\u4FE1\u606F\u8F93\u51FA\u5230\u6587\u4EF6\uFF1Ajbit.log ###
log4j.appender.logfile=org.apache.log4j.FileAppender
log4j.appender.logfile.File=jbit.log
log4j.appender.logfile.layout=org.apache.log4j.PatternLayout
log4j.appender.logfile.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss} %F %p %m%n


###\u663E\u793ASQL\u8BED\u53E5\u90E8\u5206
log4j.logger.com.ibatis=DEBUG 
log4j.logger.com.ibatis.common.jdbc.SimpleDataSource=DEBUG 
log4j.logger.com.ibatis.common.jdbc.ScriptRunner=DEBUG 
log4j.logger.com.ibatis.sqlmap.engine.impl.SqlMapClientDelegate=DEBUG 
log4j.logger.java.sql.Connection=DEBUG 
log4j.logger.java.sql.Statement=DEBUG 
log4j.logger.java.sql.PreparedStatement=DEBUG

(8)配置com.jin.dao层

8.1配置UserMapper.java接口

package com.jin.dao;

import java.util.List;

import com.jin.entity.User;

public interface UserMapper {
	public List getUserList();
	
	public User getUser(User user);
	
	public int insertUser(User user);
	
	public int updateUser(User user);
	
	public int deleteUser(User user);
}
 8.2UserMapper.xml






	
	
	
	
	
		insert into user values(null,#{name},#{pwd})
	
	
	
		delete from user where id=#{id}
	
	
	
		update user set name=#{name},pwd=#{pwd} where id=#{id}
	



(9)配置service层com.jin.service

UserService.java接口

package com.jin.service;

import java.util.List;

import com.jin.entity.User;

public interface UserService {
	
public List getUserList();
	
	public User getUser(User user);
	
	public int insertUser(User user);
	
	public int updateUser(User user);
	
	public int deleteUser(User user);
}

UserServiceImpl.java实现类


package com.jin.service.impl;

import java.util.List;

import javax.annotation.Resource;

import org.springframework.stereotype.Service;

import com.jin.dao.UserMapper;
import com.jin.entity.User;
import com.jin.service.UserService;

@Service
public class UserServiceImpl implements UserService {
	@Resource
	private UserMapper userMapper;
	
	@Override
	public List getUserList() {
		// TODO Auto-generated method stub
		return userMapper.getUserList();
	}

	@Override
	public User getUser(User user) {
		// TODO Auto-generated method stub
		return userMapper.getUser(user);
	}

	@Override
	public int insertUser(User user) {
		// TODO Auto-generated method stub
		return userMapper.insertUser(user);
	}

	@Override
	public int updateUser(User user) {
		// TODO Auto-generated method stub
		return userMapper.updateUser(user);
	}

	@Override
	public int deleteUser(User user) {
		// TODO Auto-generated method stub
		return userMapper.deleteUser(user);
	}

 
  

(10)控制 层 com.jin.action

IndexAction.java

package com.jin.action;

import javax.annotation.Resource;

import org.apache.log4j.Logger;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.servlet.ModelAndView;

import com.jin.entity.User;
import com.jin.service.UserService;

@RequestMapping("/user")
@Controller
public class IndexAction {
	private Logger loger = Logger.getLogger(IndexAction.class);
	@Resource
	private UserService userService;
	
	@RequestMapping("/index")
	public String index(){
		return "index";
	}
	@RequestMapping("/register")
	public String register(){
		return "register";
	}
	@RequestMapping("/exit")
	public String exit(){
		return "exit";
	}
	@RequestMapping("/login")
	public String login(){
		System.out.println("杩涘叆---------------------------");
		return "login";
	}
	
	@RequestMapping("/loginsuccess")
	public ModelAndView loginsuccess(User user){
		user=userService.getUser(user);
		return new ModelAndView("loginsuccess");
	}
	
	@RequestMapping("/regsuccess")
	public ModelAndView regsuccess(User user){
		int f=userService.insertUser(user);
		if(f>0){
			user=userService.getUser(user);
		}
		return new ModelAndView("regsuccess");
	}
}

}

(11)jsp:login.jsp


    pages/login. 
username:
password:




	

 (12)loginsuccess.jsp 
  

   退出页面 
welcome:--${user.Name}--

(12)  web.xml





	
	
	
		contextConfigLocation
		classpath:applicationContext-*.xml
	
		
	
	
		
	    encodingFilter
	    
	        org.springframework.web.filter.CharacterEncodingFilter
	    
	    
	     
	        encoding
	        UTF-8
	    
	    
	    
	        forceEncoding
	        true
	    
    
    
     
        encodingFilter
        /*
    
	
	
	
	
	
	
		spring
		org.springframework.web.servlet.DispatcherServlet
		
			contextConfigLocation
			classpath:spring-servlet.xml
		
		1
	
	
		spring
		/
	
	  
	
	
	
	
	
		org.springframework.web.context.ContextLoaderListener
	
	
	
		log4jConfigLocation
		classpath:log4j.properties
	
	
	
		
			org.springframework.web.util.Log4jConfigListener
		
	
	
	
	
  
    index.jsp
  


至此结束。由于时间原因,没有加入过多的说明。

你可能感兴趣的:(MyBatis)