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里调用服务,服务里调用接口方法操作数据库。如果您的也有这要的信息输出那恭喜你你成功了。

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值