springMVC + Mybatis +Mysql demo

来源:互联网 发布:淘宝网卖家首页 编辑:程序博客网 时间:2024/06/05 08:33

*目录结构*
这里写图片描述

web.xml

<?xml version="1.0" encoding="UTF-8"?><web-app    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"    xmlns="http://java.sun.com/xml/ns/javaee"    xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"    xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd"    id="WebApp_ID"    version="3.0">    <display-name>wechatServer01</display-name>    <welcome-file-list>        <welcome-file>index.html</welcome-file>        <welcome-file>index.htm</welcome-file>        <welcome-file>index.jsp</welcome-file>        <welcome-file>default.html</welcome-file>        <welcome-file>default.htm</welcome-file>        <welcome-file>default.jsp</welcome-file>    </welcome-file-list>    <!-- Spring前端控制器 -->    <servlet>        <servlet-name>SpringMVC</servlet-name>        <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>        <init-param>            <param-name>contextConfigLocation</param-name>            <param-value>                  classpath:applicationContext.xml                   <!--  /WEB-INF/applicationContext.xml -->                          </param-value>        </init-param>    </servlet>    <servlet-mapping>        <servlet-name>SpringMVC</servlet-name>        <url-pattern>*.do</url-pattern>    </servlet-mapping>    <!-- 使用Filter解决中文乱码问题 -->    <filter>        <filter-name>encodingFilter</filter-name>        <filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class>        <init-param>            <param-name>encoding</param-name>            <param-value>UTF-8</param-value>        </init-param>    </filter>    <filter-mapping>        <filter-name>encodingFilter</filter-name>        <url-pattern>*.do</url-pattern>    </filter-mapping></web-app>

application.xml

<bean id="myDataSource" class="org.apache.commons.dbcp.BasicDataSource"        destroy-method="close">        <property name="driverClassName" value="com.mysql.jdbc.Driver" />        <property name="url" value="jdbc:mysql://localhost:3306/dateBaseName" />        <property name="username" value="" />        <property name="password" value="" />    </bean>    <bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean">        <property name="dataSource" ref="myDataSource" />        <property name="mapperLocations"            value="classpath:com/XIII85/entity/*.xml" />    </bean>    <!-- 按指定包和注解标记扫描Mapper/DAO -->    <bean class="org.mybatis.spring.mapper.MapperScannerConfigurer">        <property name="sqlSessionFactory" ref="sqlSessionFactory" />        <property name="basePackage" value="com.XIII85" />        <property name="annotationClass"            value="com.XIII85.annotation.MyBatisRepository" />    </bean>    <!-- 开启注解扫描 -->    <context:component-scan base-package="com.XIII85" />    <!-- 支持@RequestMapping请求和Controller映射 -->    <mvc:annotation-driven />    <!-- 处理请求转发 -->    <bean        class="org.springframework.web.servlet.view.InternalResourceViewResolver">        <property name="prefix" value="/JSP/" />        <property name="suffix" value=".jsp" />    </bean>

controller

@Controllerpublic class MainController {    @Resource    UserInfoDao dao;    @RequestMapping("/start.do")    public String start() {        int max = dao.getMax();        System.out.println(max);        return "index";    }}

MyBatisRepository

@Repositorypublic @interface MyBatisRepository {    String value() default "";}

dao

@MyBatisRepositorypublic interface UserInfoDao {    List<UserInfo> findAll();    void insert(UserInfo user);    void update(UserInfo user);    List<UserInfo> getUserInfoByPage(@Param("start")int start ,@Param("count")int count);    void updateRemarkById(@Param("id") int id, @Param("remark") String remark);    void updateRemarkByOpenid(@Param("openId") String openId, @Param("remark") String remark);    String getOpenIdById(int id);    UserInfo getUserById(int id);    List<UserInfo> findAllByGroupId(int groupId);    List<UserInfo> findUserByNickNameLike(String str);    UserInfo getUserInfoByOpenid(String openid);    void deleteByOpenid(String fromUserName);    List<UserInfo> getUserInfoByPageAndGroupId(@Param("groupid")String groupId,@Param("start")int start ,@Param("count")int count);    int getMax();    int getMaxByGroupId(@Param("groupid")String groupId);}

user映射

<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE mapper PUBLIC "-//ibatis.apache.org//DTD Mapper 3.0//EN"       "http://ibatis.apache.org/dtd/ibatis-3-mapper.dtd"><mapper namespace="com.XIII85.dao.UserInfoDao">    <select id="findAll" resultType="com.XIII85.entity.UserInfo">        select* from userInfo    </select>    <insert id="insert" parameterType="com.XIII85.entity.UserInfo">        insert into userInfo        values(0,#{openId},#{subscribe},#{nickName},#{sex},#{language},#{city},#{province},#{country},#{headImgUrl},#{subscribeTime},#{remark},#{groupId})    </insert>    <update id="update" parameterType="com.XIII85.entity.UserInfo">        update userInfo        set subscribe =        #{subscribe}, nickName =        #{nickName},sex=#{sex},language=#{language},city=#{city},province=#{province},country=#{country},headImgUrl=#{headImgUrl},subscribeTime=#{subscribeTime},remark=#{remark},groupId=#{groupId}        where openId = #{openId}    </update>    <select id="getUserInfoByPage" parameterType="java.lang.Integer"        resultType="com.XIII85.entity.UserInfo">        select* from userInfo        limit #{start} ,#{count}    </select>    <update id="updateRemarkById">        update userInfo        set remark=#{remark}        where id= #{id}    </update>    <select id="getOpenIdById" parameterType="java.lang.Integer"        resultType="java.lang.String">        select openId from userinfo        where id = #{id}    </select>    <select id="getUserById" resultType="com.XIII85.entity.UserInfo">        select * from userinfo        where        id = #{id}    </select>    <select id="findAllByGroupId" resultType="com.XIII85.entity.UserInfo">        select * from userinfo        where groupId = #{groupId}    </select>    <select id="findUserByNickNameLike" parameterType="java.lang.String"        resultType="com.XIII85.entity.UserInfo">        SELECT * FROM userinfo        WHERE nickName LIKE concat('%',        #{deviceName}, '%')    </select>    <select id="getUserInfoByOpenid" parameterType="java.lang.String"        resultType="com.XIII85.entity.UserInfo">        SELECT * FROM userinfo        WHERE openId = #{openId}    </select>    <update id="updateRemarkByOpenid">        update userInfo        set remark=#{remark}        where openId=        #{openId}    </update>    <delete id="deleteByOpenid" parameterType="java.lang.String">        delete from userinfo        where openId = #{openid}    </delete>    <select id="getUserInfoByPageAndGroupId" resultType="com.XIII85.entity.UserInfo">        select *        from userinfo        where groupId = #{groupid}        limit #{start} ,#{count}    </select>    <select id="getMax" resultType="java.lang.Integer">        select count(openId) from        userinfo    </select>    <select id="getMaxByGroupId" resultType="java.lang.Integer">        select count(openId)        from        userinfo        where groupId = #{groupid}    </select></mapper>

user实体类

int id;    String openId;    String subscribe;    String nickName;    String sex;    String language;    String city;    String province;    String country;    String headImgUrl;    int subscribeTime;    String remark;//鍏紬鍙疯繍钀ヨ?瀵圭矇涓濈殑澶囨敞    int groupId;    String groupName;    public String getGroupName() {        return groupName;    }    public void setGroupName(String groupName) {        this.groupName = groupName;    }    public String getHeadImgUrl() {        return headImgUrl;    }    public void setHeadImgUrl(String headImgUrl) {        this.headImgUrl = headImgUrl;    }    public int getId() {        return id;    }    public void setId(int id) {        this.id = id;    }    public String getOpenId() {        return openId;    }    public void setOpenId(String openId) {        this.openId = openId;    }    public String getSubscribe() {        return subscribe;    }    public void setSubscribe(String subscribe) {        this.subscribe = subscribe;    }    public String getNickName() {        return nickName;    }    public void setNickName(String nickName) {        this.nickName = nickName;    }    public String getSex() {        return sex;    }    public void setSex(String sex) {        this.sex = sex;    }    public String getLanguage() {        return language;    }    public void setLanguage(String language) {        this.language = language;    }    public String getCity() {        return city;    }    public void setCity(String city) {        this.city = city;    }    public String getProvince() {        return province;    }    public void setProvince(String province) {        this.province = province;    }    public String getCountry() {        return country;    }    public void setCountry(String country) {        this.country = country;    }    public int getSubscribeTime() {        return subscribeTime;    }    public void setSubscribeTime(int subscribeTime) {        this.subscribeTime = subscribeTime;    }    public String getRemark() {        return remark;    }    public void setRemark(String remark) {        this.remark = remark;    }    public int getGroupId() {        return groupId;    }    public void setGroupId(int groupId) {        this.groupId = groupId;    }    @Override    public String toString() {        return "UserInfo [id=" + id + ", openId=" + openId + ", subscribe=" + subscribe + ", nickName=" + nickName + ", sex=" + sex + ", language=" + language + ", city=" + city + ", province=" + province + ", country=" + country + ", headImgUrl=" + headImgUrl + ", subscribeTime=" + subscribeTime + ", remark=" + remark + ", groupId=" + groupId + ", groupName=" + groupName + "]";    }
0 0
原创粉丝点击