jersey+spring+mybatis+maven框架集成和实现简单的crud

本文档详细介绍了如何将jersey、spring、mybatis和maven框架集成,并提供了实现简单CRUD操作的步骤。从entity层到service层,再到mapper接口和实现,以及资源层的配置,最后到配置文件和依赖管理,每个环节都有清晰的说明。通过这个教程,初学者可以避免在集成过程中遇到的常见问题。
摘要由CSDN通过智能技术生成

由于近期在学习jsm框架实现webservice 网上也是找了许多例子整合了很久才成功 现在谈谈我的经验 希望对和我一样的初学者有用 可以少走一些弯路
开始:

entity层(pojo类)

package com.eda.entity;

import Java.io.Serializable; 
import javax.xml.bind.annotation.XmlRootElement;

@XmlRootElement 
public class User implements Serializable {
    
private int id; 
private String username; 
private String sex; 
private int age; 
//由于字数限时get和set自己实现 
public User(int id, String username, String sex, int age) { 
this.id = id; 
this.username = username; 
this.sex = sex; 
this.age = age; 
} 
public User() { 
} 
}

//注意要实现序列化和无参的构造方法

service层

package com.eda.service;

import java.util.List;

import javax.annotation.Resource;

import org.springframework.stereotype.Service;

import com.eda.entity.User; 
import com.eda.mapper.UserMapper;

@Service 
public class UserService {
    
@Resource 
private UserMapper userMapper; 
public List querryUsers() 
{ 
return userMapper.selectAllUser(); 
} 
public User querryUsersbyID(int id) 
{ 
return userMapper.selectUserbyID(id); 
} 
public void deleteUserbyID(int id){ 
userMapper.deleteUserbyID(id); 
}

}

//使用@Resource可以减少spring的耦合性

mapper层
//注意mapper层实际上是个接口 用来读取mabits的配置
package com.eda.mapper;

import java.util.List;

import com.eda.entity.User;

public interface UserMapper {
List selectAllUser();
User selectUserbyID(int id);
void deleteUserbyID(int id);
}

实现层 也就是resourpackage com.eda.resource;

import java.io.UnsupportedEncodingException;
import java.util.List;

import javax.annotation.Resource;
import javax.ws.rs.DELETE;
import javax.ws.rs.GET;
import javax.ws.rs.Path;
import javax.ws.rs.PathParam;
import javax.ws.rs.Produces;
import javax.ws.rs.core.MediaType;

import org.springframework.stereotype.Component;

import com.eda.entity.User;
import com.eda.service.UserService;
@Component
@Path(“User”)
public class UserResource {
@Resource
private UserService userService;
@GET
@Path(“getUser”)
@Produces(“application/json”)
public List getUsers() throws UnsupportedEncodingException
{
return userService.querryUsers();
}
@GET
@Path(“getUserbyID/{id}”)
@Produces(“application/json”)
public User getUserbyID(@PathParam(“id”)int id) throws UnsupportedEncodingException
{
return userService.querryUsersbyID(id);
}
@DELETE
@Path(“deleteUser/{id}”)
@Produces(MediaType.APPLICATION_JSON)
public void deleteUser(@PathParam(“id”)int id)
{
userService.deleteUserbyID(id);
}
}是配置文件

需要新建一个source folder 名为config
然后新建一个package名为 MapperImpl
UserMapper.xml(在MapperImpl包里面)

<?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.eda.mapper.UserMapper">
    <!-- 作为UserMapper接口的映射 -->
    <!-- 查询 -->
    <select id="selectAllUser" parameterType="com.eda.entity.User"
        resultType="com.eda.entity.User">
        select id,username,sex,age
        from z_user
    </select>
    <!-- 根据ID查询 -->
    <select id="selectUserbyID" parameterType="com.eda.entity.User"
        resultType="com.eda.entity.User">
        select id,username,sex,age
        from z_user
        where id = #{id}
    </select>
    <!-- 删除 -->
    <delete id="deleteUserbyID" parameterType="com.eda.entity.User">
        delete
        from z_user
        where id = #{id}
    </delete>

</mapper>

//数据库jdbc.properties

driver=com.mysql.jdbc.Driver
url=jdbc:mysql://localhost:3306/test?useUnicode=true&characterEncoding=utf-8&useSSL=false&autoReconnect=true&failOverReadOnly=false
username=root
password=root
initialSize=0
maxActive=20
maxIdle=20
minIdle=1
maxWait=60000

//spring+mybatis配置文件
ApplicationContext.

<beans xmlns="http://www.springframework.org/schema/beans" 
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xmlns:context="http://www.springframework.org/schema/context"
    xmlns:tx="http://www.springframework.org/schema/tx"
    xmlns:aop="http://www.springframework.org/schema/aop"
    xsi:schemaLocation="
       http://www.springframework.org/schema/beans 
       http://www.springframework.org/schema/beans/spring-beans-3.0.xsd
       http://www.springframework.org/schema/tx
       http://www.springframework.org/schema/tx/spring-tx-3.0.xsd
       http://www.springframework.org/schema/context   
       http://www.springframework.org/schema/context/spring-context-3.0.xsd
       http://www.springframework.org/schema/aop
       http://www.springframework.org/schema/aop/spring-aop-3.0.xsd">
       <context:component-scan base-package="com.eda" />
<context:annotation-config/>
<!-- 自动扫描 -->
<!-- 引入数据库配置文件 -->
<bean id="propertyConfigurer"
class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer">
<property name="location" value="classpath:jdbc.properties" />
</bean>

<bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource"
destroy-method="close">
<property name="driverClassName" value="${driver}" />
<property name="url" value="${url}" />
<property name="username" value="${username}" />
<property name="password" value="${password}" />
<!-- 初始化连接大小 -->
<property name="initialSize" value="${initialSize}"></property>
<!-- 连接池最大数量 -->
<property name="maxActive" value="${maxActive}"></property>
<!-- 连接池最大空闲 -->
<property name="maxIdle" value="${maxIdle}"></property>
<!-- 连接池最小空闲 -->
<
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值