成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專欄INFORMATION COLUMN

基于注解方式配置springMVC 并整合mybatis(二)

peixn / 2686人閱讀

摘要:基于注解方式配置并整合一接上篇文章,如下是整合數(shù)據(jù)層。整合時(shí),如果不加上就無法啟動(dòng)容器。

基于注解方式配置springMVC 并整合mybatis(一)

接上篇文章,如下是整合數(shù)據(jù)層。

spring-mybatis.xml




    
    
    
    
    
    
        
    

    
        
        
        
        
        
        
        
        
        
        
        
        
        
        
    

    
    
        
        
        
    

    
    
        
        
    

    
    
        
    
    
    

jdbc.properties

driver=com.mysql.jdbc.Driver
url=jdbc:mysql://127.0.0.1:3306/test?useUnicode=true&characterEncoding=utf-8
username=root
password=123qwe
#定義初始連接數(shù)
initialSize=0
#定義最大連接數(shù)
maxActive=20
#定義最大空閑
maxIdle=20
#定義最小空閑
minIdle=1
#定義最長等待時(shí)間
maxWait=60000

UserTMapper.xml




  
    
    
    
    
    
  
  
    
    id, user_name, password, age
  
  
  
    
    delete from user_t
    where id = #{id,jdbcType=INTEGER}
  
  
    
    insert into user_t (id, user_name, password, 
      age)
    values (#{id,jdbcType=INTEGER}, #{userName,jdbcType=VARCHAR}, #{password,jdbcType=VARCHAR}, 
      #{age,jdbcType=INTEGER})
  
  
    
    insert into user_t
    
      
        id,
      
      
        user_name,
      
      
        password,
      
      
        age,
      
    
    
      
        #{id,jdbcType=INTEGER},
      
      
        #{userName,jdbcType=VARCHAR},
      
      
        #{password,jdbcType=VARCHAR},
      
      
        #{age,jdbcType=INTEGER},
      
    
  
  
    
    update user_t
    
      
        user_name = #{userName,jdbcType=VARCHAR},
      
      
        password = #{password,jdbcType=VARCHAR},
      
      
        age = #{age,jdbcType=INTEGER},
      
    
    where id = #{id,jdbcType=INTEGER}
  
  
    
    update user_t
    set user_name = #{userName,jdbcType=VARCHAR},
      password = #{password,jdbcType=VARCHAR},
      age = #{age,jdbcType=INTEGER}
    where id = #{id,jdbcType=INTEGER}
  
  
    
      
         and user_name = #{userName,jdbcType=VARCHAR}
      
      
         and password = #{password,jdbcType=VARCHAR}
      
      
         and age = #{age,jdbcType=INTEGER}
      
    
  
  

UserTMapper

public interface UserTMapper {
    /**
     * This method was generated by MyBatis Generator.
     * This method corresponds to the database table user_t
     *
     * @mbggenerated Fri Oct 27 15:37:49 CST 2017
     */
    int deleteByPrimaryKey(Integer id);

    /**
     * This method was generated by MyBatis Generator.
     * This method corresponds to the database table user_t
     *
     * @mbggenerated Fri Oct 27 15:37:49 CST 2017
     */
    int insert(UserT record);

    /**
     * This method was generated by MyBatis Generator.
     * This method corresponds to the database table user_t
     *
     * @mbggenerated Fri Oct 27 15:37:49 CST 2017
     */
    int insertSelective(UserT record);

    /**
     * This method was generated by MyBatis Generator.
     * This method corresponds to the database table user_t
     *
     * @mbggenerated Fri Oct 27 15:37:49 CST 2017
     */
    UserT selectByPrimaryKey(Integer id);

    /**
     * This method was generated by MyBatis Generator.
     * This method corresponds to the database table user_t
     *
     * @mbggenerated Fri Oct 27 15:37:49 CST 2017
     */
    int updateByPrimaryKeySelective(UserT record);

    /**
     * This method was generated by MyBatis Generator.
     * This method corresponds to the database table user_t
     *
     * @mbggenerated Fri Oct 27 15:37:49 CST 2017
     */
    int updateByPrimaryKey(UserT record);

    List getList(UserT UserT);
}

UserService

@Service
public class UserService {
    @Resource
    private UserTMapper userTMapper;

    public UserT getUserById(int userId) {
        return userTMapper.selectByPrimaryKey(userId);
    }

}

HelloController

@Controller
public class HelloController {

    @Resource
    private UserService userService;

    @RequestMapping("index")
    public String hello(){
        System.out.println("hello world");
        return "index";
    }

    @RequestMapping(value = "/user")
    @ResponseBody
    public String Random(){
        UserT userById = userService.getUserById(1);
        return "data:"+ JSON.toJSONString(userById);
    }

}

在WebInitializer中需加入監(jiān)聽器

public class WebInitializer implements WebApplicationInitializer {

    @Override
    public void onStartup(ServletContext servletContext) throws ServletException {

        AnnotationConfigWebApplicationContext context = new AnnotationConfigWebApplicationContext();
        context.register(MyMvcConfig.class);
        context.setServletContext(servletContext);
        ServletRegistration.Dynamic servlet = servletContext.addServlet("dispatcher",new DispatcherServlet(context));
        servlet.addMapping("/");
        servlet.setLoadOnStartup(1);
        servlet.setAsyncSupported(true);
        servletContext.setInitParameter("contextConfigLocation","classpath:spring-mybatis.xml");
        servletContext.addListener(ContextLoaderListener.class);
    }
}

最后目錄結(jié)構(gòu)為

總結(jié):
基于java類配置,是spring4中推薦的方式,類和注解組合可以減少很多配置文件。整合mybatis時(shí),如果不加上servletContext.addListener(ContextLoaderListener.class);就無法啟動(dòng)容器。

文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請注明本文地址:http://systransis.cn/yun/67934.html

相關(guān)文章

  • Java后端

    摘要:,面向切面編程,中最主要的是用于事務(wù)方面的使用。目標(biāo)達(dá)成后還會有去構(gòu)建微服務(wù),希望大家多多支持。原文地址手把手教程優(yōu)雅的應(yīng)用四手把手實(shí)現(xiàn)后端搭建第四期 SpringMVC 干貨系列:從零搭建 SpringMVC+mybatis(四):Spring 兩大核心之 AOP 學(xué)習(xí) | 掘金技術(shù)征文 原本地址:SpringMVC 干貨系列:從零搭建 SpringMVC+mybatis(四):Sp...

    joyvw 評論0 收藏0
  • 基于注解方式配置springMVC 整合mybatis(一)

    摘要:在實(shí)戰(zhàn)一書中前面兩部分分別介紹了和的高級特性,并且基于類配置有一套層的,但是沒有將層整合層,于是我試著整合了下,也方便以后寫測試。 在《springBoot實(shí)戰(zhàn)》 一書中前面兩部分分別介紹了spring 和 springMVC的高級特性,并且基于java類配置有一套web層的demo,但是沒有將web層整合dao層,于是我試著整合了下,也方便以后寫測試demo。下面是我的整理 pom....

    岳光 評論0 收藏0
  • 手撕面試官系列():開源框架面試題Spring+SpringMVC+MyBatis

    摘要:跳槽時(shí)時(shí)刻刻都在發(fā)生,但是我建議大家跳槽之前,先想清楚為什么要跳槽。切不可跟風(fēng),看到同事一個(gè)個(gè)都走了,自己也盲目的開始面試起來期間也沒有準(zhǔn)備充分,到底是因?yàn)榧夹g(shù)原因影響自己的發(fā)展,偏移自己規(guī)劃的軌跡,還是錢給少了,不受重視。 跳槽時(shí)時(shí)刻刻都在發(fā)生,但是我建議大家跳槽之前,先想清楚為什么要跳槽。切不可跟風(fēng),看到同事一個(gè)個(gè)都走了,自己也盲目的開始面試起來(期間也沒有準(zhǔn)備充分),到底是因?yàn)榧?..

    Flink_China 評論0 收藏0
  • Java學(xué)習(xí)路線總結(jié),搬磚工逆襲Java架構(gòu)師(全網(wǎng)最強(qiáng))

    摘要:哪吒社區(qū)技能樹打卡打卡貼函數(shù)式接口簡介領(lǐng)域優(yōu)質(zhì)創(chuàng)作者哪吒公眾號作者架構(gòu)師奮斗者掃描主頁左側(cè)二維碼,加入群聊,一起學(xué)習(xí)一起進(jìn)步歡迎點(diǎn)贊收藏留言前情提要無意間聽到領(lǐng)導(dǎo)們的談話,現(xiàn)在公司的現(xiàn)狀是碼農(nóng)太多,但能獨(dú)立帶隊(duì)的人太少,簡而言之,不缺干 ? 哪吒社區(qū)Java技能樹打卡?【打卡貼 day2...

    Scorpion 評論0 收藏0

發(fā)表評論

0條評論

最新活動(dòng)
閱讀需要支付1元查看
<