在有了个模板的情况下自己琢磨SSM框架,
1.model.system文件夹里面写实体类,写具体的属性,并写set、get方法
例:Food类
属性foodId、foodname、price、place
getset方法(略)
2.dao.system文件夹里写User类的接口
创建FoodrMapper接口(!!是接口!!)
写Food类方法名,要用什么方法就写什么方法
3model.system文件夹里面写xml文件
UserMapper.xml
Mapper头文件
<?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接口在哪
<mapper namespace="com.bpf.base.dao.system.FoodrMapper" >
对应的实体类在哪
<resultMap id="BaseResultMap" type="com.bpf.base.model.system.Food" >
对应的属性是什么
<id column="FOOD_ID" property="foodId" jdbcType="INTEGER" /><result column="FOODNAME" property="foodname" jdbcType="VARCHAR" />
<result column="PRICE" property="price" jdbcType="INTEGER" />
<result column="PLACE" property="place" jdbcType="VARCHAR" />
</resultMap>
写方法的具体SQL语句
<sql id="Base_Column_List" >
FOOD_ID, FOODNAME, PRICE, PLACE
</sql>
<select id="selectByPrimaryKey" resultMap="BaseResultMap" parameterType="java.lang.Integer" >
select
<include refid="Base_Column_List" />
from T_SYS_FOOD
where FOOD_ID = #{foodId,jdbcType=INTEGER}
</select>
<delete id="deleteByPrimaryKey" parameterType="java.lang.Integer" >
delete from T_SYS_FOOD
where FOOD_ID = #{foodId,jdbcType=INTEGER}
</delete>
4service.system文件夹里写service
@Service
@Transactional
public class FoodService {
//在类上面上加这俩标签
@Autowired
//在方法上前面加@Autowired
private FoodMapper foodMapper;
public int deleteByPrimaryKey(Integer foodId) {
return foodMapper.deleteByPrimaryKey(foodId);
}
public int insert(Food record) {
return foodMapper.insert(record);
}
写调用方法
5controller.system文件夹里面写controller层
@Controller
@RequestMapping({ "/system/food" })
//还是在类上加标签
public class FoodController extends BaseController{
@SuppressWarnings("unused")
private final static Log log = LogFactory.getLog(FoodController.class);
@Autowired
private FoodService foodService;
@RequestMapping(value = { "/init", "" })
public String init() {
return "system/food";
}
@RequestMapping(value = "/list")
@ResponseBody
public Map<String, Object> list(HttpServletRequest request, Food foodSearch) {
Integer pageNum = Integer.parseInt(null == request.getParameter("page") ? 1 + "" : request.getParameter("page").toString());
Integer pageSize = Integer.parseInt(null == request.getParameter("rows") ? 10 + "" : request.getParameter("rows").toString());
Map<String, Object> conditions = new HashMap<String, Object>();
conditions.put(Constants.Page.OFFSET, (pageNum - 1) * pageSize);
conditions.put(Constants.Page.LIMIT, pageSize);
conditions.put(Constants.Condition.ORDERBY_CLAUSE, "FOOD_ID DESC");
List<Food> list = foodService.selectList(conditions);
int total = foodService.selectCount(conditions);
Map<String, Object> map = new HashMap<String, Object>();
map.put("total", total);
map.put("rows", list);
return map;
}
@RequestMapping(value = "/save")
@ResponseBody
public Map<String, Object> save(Food food) {
// food.setPassword(ConfigUtil.getConfig("init.password"));
if (foodService.insertSelective(food) > 0) {
return AjaxUtils.reponseToJson(Constants.Action.SAVE, true);
}
return AjaxUtils.reponseToJson(Constants.Action.SAVE, false);
}
@RequestMapping(value = "/deleteAll")
@ResponseBody
public Map<String, Object> delete(@RequestParam(value = "ids", required = true) Integer foodId) {
if (foodService.deleteByPrimaryKey(foodId) > 0) {
return AjaxUtils.reponseToJson(Constants.Action.DELETE, true);
}
return AjaxUtils.reponseToJson(Constants.Action.DELETE, false);
}
略了一些方法
6去写jsp页面,在页面上调用方法就好