这下好了,业务也分完了,剩下的前端也有事干了。我们来一个贯穿的,把刚才从数据查询出的数据展示到页面。
首先在service的pom里关联上module-dao
<dependency>
<groupId>scc-module</groupId>
<artifactId>module-dao</artifactId>
<version>${project.version}</version>
</dependency>
然后建一个sqlsession的工具类
package scc.util;
import java.io.IOException;
import org.apache.ibatis.io.Resources;
import org.apache.ibatis.session.SqlSession;
import org.apache.ibatis.session.SqlSessionFactory;
import org.apache.ibatis.session.SqlSessionFactoryBuilder;
public class SessionFactoryUtil {
private static SqlSessionFactory sessionFactory;
static{
try {
sessionFactory= new SqlSessionFactoryBuilder().build(Resources.getResourceAsReader("configuration.xml"));
} catch (IOException e) {
e.printStackTrace();
}
}
public static SqlSession getSqlSession(){
return sessionFactory.openSession();
}
public static <T> T getMapper(Class<T> mapperClass){
return getSqlSession().getMapper(mapperClass);
}
}
再回到service工程,建一个业务类
package scc.service;
import scc.dao.UserMapper;
import scc.entry.User;
import scc.util.SessionFactoryUtil;
public class TestService {
public User findbyid(Integer id){
return SessionFactoryUtil.getMapper(UserMapper.class).findById(id);
}
}
找到controller
package scc.service;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.RequestMapping;
@Controller
@RequestMapping("/TestController")
public class TestController {
@RequestMapping("hello.do")
public String test01(Model model){
model.addAttribute("user", new TestService().findbyid(1));
return "hello";
}
}
找到页面
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Insert title here</title>
</head>
<body>
编号:${user.id }
姓名:${user.name }
年龄:${user.age }
</body>
</html>
需要注意的是,dao的配置文件要放在源代码的src下,而不是resource下,因为打包的时候maven不会将他下面的文件打包,好了,访问页面