spring+SpringMVC+mybatis框架搭建(下篇)

配置部分就先到此,接下来我们要对MySQL数据库中的数据进行操作。


主要任务:完善sql语句,配置方法,测试结果。


1、完善UserDao.xml
①sql语句整合


		
			
			 and username = #{username}
			
			
			 and pwd = #{pwd}
			
			
			
			 and id = #{id}
			
			
			 and realname like concat('%', #{realname},'%')
			 
			 
			
		
	

此部分将我们所需要的值列了出来。
②sql语句——查询


	

③sql语句——添加


	
		insert into user(username,pwd,realname)
		values(#{username},#{pwd},#{realname})
	

④sql语句——更新


		update user
		
			
			 	username = #{username},
			
			
			 	pwd = #{pwd},
			
			
			 	realname = #{realname},
			
		
		where id = #{id}
	 	
	

⑤sql语句——删除


		delete from user where id = 
		#{id}
	

⑥批量操作


	
		update user set pwd='123' where id in
		
			#{item}
		
	

以上六部分是在UserDao.xml中的’mapper’标签中写的。

2、配置包中类的各种方法。
①根据上一步中可以在UserDao.java中创造一下几个方法

package com.lf.dao;

import java.util.List;

import com.lf.model.User;

public interface UserDao {
	public List list(User user);
	public void create(User user);
	public void update(User user);
	public void delete(Integer id);
	public void updateBatch(List list);
}

②接口UserService中同样也要配置。

package com.lf.service;

import java.util.List;

import com.lf.model.User;

public interface UserService {
	
	public List list(User user);
	public void create(User user);
	public void update(User user);
	public void delete(Integer id);
	public void updateBatch(List list);
}

③继承接口的类UserServiceImpl也要加入相应的方法。

package com.lf.service;

import java.util.List;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;

import com.lf.dao.UserDao;
import com.lf.model.User;

@Service
public class UserServiceImpl implements UserService {
	
	@Autowired
	private UserDao userDao;
	
	@Override
	public List list(User user) {
		return userDao.list(user);
	}

	@Override
	public void create(User user) {
		userDao.create(user);
	}

	@Override
	public void update(User user) {
		userDao.update(user);
	}

	@Override
	public void delete(Integer id) {
		userDao.delete(id);
	}

	@Override
	public void updateBatch(List list) {
		userDao.updateBatch(list);	
	}
}

④测试以上代码是否正确。
在controller层中的Usercontroller中添加相应测试代码

@ResponseBody
	@RequestMapping("/create.do")
	public boolean create(User user){
		try{
			userService.create(user);
		}catch(Exception e){
			System.out.println(e.getMessage());
			return false;
		}
		return true;
	}

3、添加log4j.properties
在src下添加一个文件,名叫log4j.properties,此文件是来输出程序的调试信息等内容的。

# Global logging configuration
log4j.rootLogger=ERROR, stdout
# MyBatis logging configuration...
log4j.logger.org.mybatis.example.BlogMapper=TRACE
log4j.logger.com.lf=DEBUG
# Console output...
log4j.appender.stdout=org.apache.log4j.ConsoleAppender
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
log4j.appender.stdout.layout.ConversionPattern=%5p [%t] - %m%n

4、测试结果
①测试是否可以根据realname的值查找到相应值。
地址栏输入的地址如下,若显示出来,则正确了。
spring+SpringMVC+mybatis框架搭建(下篇)_第1张图片
②测试向user表中添加数据。
spring+SpringMVC+mybatis框架搭建(下篇)_第2张图片
spring+SpringMVC+mybatis框架搭建(下篇)_第3张图片
可见添加成功了,说明代码没问题。

③log4j.properties有什么用呢?为了实验,我将建表时候的id 自增长给取消,然后进行了测试,在屏幕上会打印以下信息。
spring+SpringMVC+mybatis框架搭建(下篇)_第4张图片
在上图中我们可以看到,我们犯的错误是:数据库中id的值不存在默认值,那么我们可以很轻易的对我们的代码进行修改。
好的,先到这里了~

你可能感兴趣的:(企业实训)