SSM(ssm)心得體會之三構建簡單例項
上一篇文章講述瞭如何搭建ssm環境
本篇就具體使用框架
根據上一篇文章配置成功後控制檯應該是這樣的。如果您是這樣的那就請繼續閱讀,否則您還要在看看前一篇哦。
第一步:新建檢視層目錄
在jsp目錄下存放我們的jsp檔案,在jsp資料夾下新建一個demo.jsp檔案
第二步:新建控制器類
package com.lb.controller;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;
@Controller
public class DemoController {
@RequestMapping(value="/demo.do")
public String savedata(){
System.out.println("哈哈我進來了");
return "demo";
}
}
重啟一下伺服器測試一下 http://localhost:8080/SSMdemo1/demo.do 請求控制器
有以上資訊恭喜你控制器ok了,它和servlet功能類似。
上面是響應檢視的,那我們要通過非同步請求時,我只想得到資料怎麼辦呢?很簡單。。。
我們在編輯一個controller 加上@responsebody註解返回json資料
@RequestMapping(value="/demo1.do")
@ResponseBody
public String DemoJson(){
System.out.println("我處理好了json資料了");
return "ok";
}
第三步:通過mybatis操作資料庫
新建departdata表和javabean檔案
public class Partment {
private Integer departid;
private String departname;
private String superdepart;
private String departstate;
private String dstartime;
private String dendtime;
private String historyname;
private String departdescript;
public Integer getDepartid() {
return departid;
}
public void setDepartid(Integer departid) {
this.departid = departid;
}
此處省略其他屬性的get set方法
和單獨操作mybatis框架一樣我們需要建立一個介面和mapper檔案
package com.lb.dao;
import com.lb.entity.Partment;
public interface PartmentMapper {
int insert(Partment record);
}
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd" >
<mapper namespace="com.lb.dao.PartmentMapper" >
<resultMap id="BaseResultMap" type="com.lb.entity.Partment" >
<id column="departId" property="departid" jdbcType="INTEGER" />
<result column="departName" property="departname" jdbcType="VARCHAR" />
<result column="superDepart" property="superdepart" jdbcType="VARCHAR" />
<result column="departState" property="departstate" jdbcType="VARCHAR" />
<result column="DstarTime" property="dstartime" jdbcType="VARCHAR" />
<result column="DendTime" property="dendtime" jdbcType="VARCHAR" />
<result column="historyName" property="historyname" jdbcType="VARCHAR" />
<result column="DepartDescript" property="departdescript" jdbcType="VARCHAR" />
</resultMap>
<insert id="insert" parameterType="com.lb.entity.Partment" >
insert into departdata (departId, departName, superDepart,
departState, DstarTime, DendTime,
historyName, DepartDescript)
values (#{departid,jdbcType=INTEGER}, #{departname,jdbcType=VARCHAR}, #{superdepart,jdbcType=VARCHAR},
#{departstate,jdbcType=VARCHAR}, #{dstartime,jdbcType=VARCHAR}, #{dendtime,jdbcType=VARCHAR},
#{historyname,jdbcType=VARCHAR}, #{departdescript,jdbcType=VARCHAR})
</insert>
</mapper>
第四步:呼叫介面寫具體的服務邏輯
import com.lb.dao.*;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
@Service
public class DepartmentService{
@Autowired
PartmentMapper PartmentMapper;
public void Savedata(){
System.out.println("部門服務邏輯程式碼");
Partment p = new Partment();
p.setDepartname("測試部");
PartmentMapper.insert(p);
}
}
第五步:在之前的controller呼叫服務
我們新建一個controller 方法
@Autowired
DepartmentService departmentService;
@RequestMapping(value="/demo2.do")
@ResponseBody
public String Demo2(){
System.out.println("我呼叫departmentService服務了");
departmentService.Savedata();
return "ok";
}
到這裡我們請求controller,在controller裡呼叫服務,服務裡呼叫介面方法操作資料庫。如果您的也有這要的資訊輸出那恭喜你你成功了。