• springmvc 入门实例,id作为形参传入,分页传入,#注释的地方


     有2个注解,一个@PathVariable,一个@RequestParam,后一个是?问号后带的参数,比如pn翻页,另外接收json,在入参时,加入@RequestBody,。另外需要在配置文件中启用 @EnableWebMvc

    @RestController
    public class IndexController {
    
        @Autowired
        private UserService userService;
    
        @RequestMapping("/getone")
        public User getone(){
            User byId = this.userService.getById(1);
            return byId;
    
        }
    
        @RequestMapping("/listpage")
        public List<User> listpage(@RequestParam(value="pn",defaultValue = "1") Integer pn){     // 这里可以将?后的参数,自定义为入参的名称,如果这里@requestParam也是pn,也可以省略,
            IPage page = new Page(pn,3);
            List<User> users = this.userService.page(page,null).getRecords();
            return users;
    
        }
         
    public String listpage2(@RequestParam List<String> likes){ // 如果传参是个list集合,需在前面加上@requestParam,可以了。因为他会自动把list当作pojo转换,而不是当作数组往里添加
    }

    public String parampage(User user){ // 如果user有级联的属性,比如有address,在传参的时候,?name=xiaoming&age=19&address.name=beijing&address.province=haidian 只要写点,往后加,级联就可以自动包装进去pojo
    }

    public String jsonpage(@RequestBody List<String> likes){ } // 接收json

    public String datePage(@DateTimeFormat(pattern="yyyy-MM-dd") Date date){} // 接收日期,默认yyyy/MM/dd,其他的需要写格式转换 @RequestMapping(
    "/list/{id}") public User list(@PathVariable Long id){ return this.userService.getById(id); }

    postman 发送json 

     json pojo

     

    ///////////////////////////////////////////////////////////////////////////////////////////////////////////

    另外一个注解 @Param 

    在 xml中,他是用来对于井号后的参数的,对应注解@Param后的参数

    <select id="getDescriptionUpOthers" resultType="cn.taotao.bean.Description">
    select *  from tbl_description where id > #{id ,jdbcType=INTEGER} and categoryId = #{cat,jdbcType=INTEGER} and isPublish =1 order by id asc limit  #{num,jdbcType=INTEGER}
    </select>

    对应的dao接口

    public List<Description> getDescriptionUpOthers(@Param("cat")Integer cat,@Param("num")Integer num,@Param("id") Integer id);

     另外的一个例子

    有#的注释,写在dao层中

    @Select("select * from tbl_user inner join tbl_depart using(departId) where id =#{value}")
        @Results({
                @Result(property = "depart", javaType = Depart.class, column = "departid", one = @One(select = "cn.taotao.dao.DepartDao.selectByPrimaryKey"))
                , @Result(property = "departid", column = "departid")})
        User selectByPrimaryKey(Long id);

    里面引用的其他dao类

        @Select("select * from tbl_depart where departid=#{value}")
        Depart selectByPrimaryKey(Integer departid);
  • 相关阅读:
    关于拉格朗日乘子法和KKT条件
    深入理解拉格朗日乘子法(Lagrange Multiplier) 和KKT条件
    安全模式下运行Windows installer并卸载程序
    win10 进入安全模式的方法
    支持向量机通俗导论(理解SVM的三层境界)
    Windows系统防火墙用法
    浏览器起始页被篡改恶意跳转解决方法
    网络熟知端口号
    SSL/TLS协议运行机制的概述
    分布式拒绝服务攻击 DDoS
  • 原文地址:https://www.cnblogs.com/sdgtxuyong/p/16229946.html
Copyright © 2020-2023  润新知