发表于: 2018-02-01 20:54:35

2 648


今日完成:

1.       HTTP状态码(HTTP Status Code)是用以表示网页服务器HTTP响应状态的3位数字代码

可以使用HttpStatus.方法调用

2.       http请求访问方法

public enum RequestMethod {

    GET, HEAD, POST, PUT, PATCH, DELETE, OPTIONS, TRACE

}

3.       ResponseEntity返回相应数据,定义返回的HttpHeadersHttpStatus

4.       @PathVariable 映射 URL 绑定的占位符

通过 @PathVariable 可以将 URL 中占位符参数绑定到控制器处理方法的入参中:URL 中的 {xxx} 占位符可以通过@PathVariable(xxx) 绑定到操作方法的入参中。

5.       测试POST方法

6.       ResponseEntity<Void> 不返回 V是大写的

7.       @RequestBody使用

作用:

注解用于将Controller的方法参数,根据HTTP Request Headercontent-Type的内容,通过适当的HttpMessageConverter转换为JAVA

使用时机:

POST或者PUT的数据是JSON格式或者XML格式,而不是普通的键值对形式。

8.       UriComponentsBuilder生产uri赋给httpHeader

9.       更新信息应该把新信息复制,因为新信息可能不全,特别是缺失主键的情况,导致更新失败

10.   添加jetty插件

命令行运行

11.   javadynamic web projectweb project 的区别如下:

Dynamic web project 动态web 页面中可以包含动态信息,如:JSP页面等。创建动态信息的工程,需要指定Web运行的容器(TomcatJboss等)

Static web project    静态web 页面中不能包含动态信息,全部内容都是写死了的,直接点击就可以看到效果

12.   jar包的scope

当添加进入一个jar包后,有一些属性需要设置,最重要的就是scope,它有以下几种取值:

1. compile,缺省值,适用于所有阶段,会随着项目一起发布。

2. provided,类似compile,期望JDK、容器或使用者会提供这个依赖。如servlet.jar

3. runtime,只在运行时使用,如JDBC驱动,适用运行和测试阶段。

4. test,只在测试时使用,用于编译和运行测试代码。不会随项目发布。

5. system,类似provided,需要显式提供包含依赖的jarMaven不会在 Repository中查找它。

13.   IOC容器生成对象是通过反射方式,在运行效率上有一定的损耗。

14.   @Parma注解

1)使用@Param注解

当以下面的方式进行写SQL语句时:

    @Select("select column from table where userid = #{userid} ")

    public int selectColumn(int userid);

当你使用了使用@Param注解来声明参数时,如果使用 #{} ${} 的方式都可以。

    @Select("select column from table where userid = ${userid} ")

    public int selectColumn(@Param("userid") int userid);

当你不使用@Param注解来声明参数时,必须使用使用 #{}方式。如果使用 ${} 的方式,会报错。

    @Select("select column from table where userid = #{userid} ")

    public int selectColumn(@Param("userid") int userid);

2)不使用@Param注解

不使用@Param注解时,参数只能有一个,并且是Javabean。在SQL语句里可以引用JavaBean的属性,而且只能引用JavaBean的属性。

    // 这里iduser的属性

    @Select("SELECT * from Table where id = #{id}")

Enchashment selectUserById(User user);

15.   spring的延迟初始化bean default-lazy-init lazy-init

明日计划:

1.       添加前端页面进行连接

2.       添加日志文件

3.       学习JsonTagLib,完成Json接口

遇到的问题:

1.      

这是什么意思呢

2.        tomcat可以直接跳转到默认页面,在jetty无法打开

收获:

1.       task1的基础上实现了RESTful风格的CRUD,并且在postmandhc上测试成功

2.       熟悉spring mvc的配置文件和主要注解



返回列表 返回列表
评论

    分享到