JAVA程序员晋级之路
不穿西服的程序员
这个作者很懒,什么都没留下…
展开
-
maven+spring框架搭建&对象准备
在做任何学习介绍之前,我想有必要先说一下我的学习思路,我看过一些技术方面的书籍,几乎所有都是以介绍某项技术的历史来开头的,我不是不赞同,只是我个人觉得我刚开始看书更喜欢直接找到关键点,所以我写东西通常会把历史放在最后讲,然后我所有的代码完成都是基于IDEA的,这是一个优秀的IDE,我想也值得大家来学习,还有一点无论学习spring和mybatis等等框架我都会结合maven来介绍所以如果没有Mav...原创 2018-09-04 10:47:31 · 103 阅读 · 0 评论 -
springmvc 注解开发之 validation校验
项目中使用较多的是前端的校验,比如页面中js校验。对于安全要求较高的建议在服务端进行校验。服务端校验: 控制层controller:校验页面请求的参数的合法性,在服务端控制层controller校验,不区分客户端类型(浏览器、手机客户端、远程调用) 业务层service:主要校验关键业务参数,仅限于service接口中使用的参数 持久层dao:一般是不校验的。 sprin...原创 2018-09-12 16:52:35 · 231 阅读 · 0 评论 -
springmvc之数据回显
概念:提交后,如果页面出现错误, 将刚才提交的数据回显到刚才的提交页面。POJO数据回显方法pojo数据传入controller方法后,springmvc自动将pojo数据放到request域,key等于pojo类型(首字母小写)如果页面显示数据类型与controller方法传参类型不一致,则数据回显失败,需要用下面方法解决。@modelAttribute //@ModelA...原创 2018-09-12 17:26:02 · 221 阅读 · 0 评论 -
Springmvc之异常处理
系统中异常包括预期异常和运行时异常RuntimeException,前者通过捕获异常从而获取异常信息,后者主要通过规范代码开发、测试通过手段减少运行时异常的发生。系统的dao、service、controller出现都通过throws Exception向上抛出,最后由springmvc前端控制器交由异常处理器进行异常处理。 springmvc提供全局异常处理器(一个系统只有一个异常...原创 2018-09-12 20:03:20 · 141 阅读 · 0 评论 -
Mybatis中sqlMapConfig.xml配置
SqlMapConfig.xml中配置的内容和顺序如下: properties(属性)settings(全局配置参数)typeAliases(类型别名)typeHandlers(类型处理器)objectFactory(对象工厂)plugins(插件)environments(环境集合属性对象)environment(环境子属性对象)transactionMa...原创 2018-09-07 08:28:29 · 85 阅读 · 0 评论 -
Mybatis之resultMap手动映射
resultType可以指定将查询结果映射为pojo,但需要pojo的属性名和sql查询的列名一致方可映射成功。 如果sql查询字段名和pojo的属性名不一致,可以通过resultMap将字段名和属性名作一个对应关系 ,resultMap实质上还需要将查询结果映射到pojo对象中。 resultMap可以实现将查询结果映射为复杂类型的pojo,比...原创 2018-09-07 11:22:32 · 594 阅读 · 0 评论 -
mybatis之动态sql
if/where 标签<!--根据性别和名字查询用户 where标签可以自动去掉第一个前and--> <select id="selectUserBySexAndUsername" parameterType="pojo.User" resultType="pojo.User"> select * from user <w...原创 2018-09-07 14:56:47 · 88 阅读 · 0 评论 -
springmvc之上传图片
在页面form中提交enctype="multipart/from-data"的数据时,需要springmvc对multipart类型的数据进行解析。在springmvc.xml中配置解析这种类型数据的解析器。配置解析器需要提前配置依赖 <dependency> <groupId>commons-fileupload...原创 2018-09-13 09:49:17 · 106 阅读 · 0 评论 -
springmvc之json数据交互
json数据格式在接口调用中,html页面中较常用,json格式比较简单,解析还比较方便。 springmvc进行json数据交互 为什么要用json数据进行解析最终输出json数据,为了方便在前端界面对请求结果进行解析。1、请求json、输出json,要求请求的是json串,所以在前端页面需要将请求的内容转成json,不方便。2、请求key/value,输出json,此方...原创 2018-09-13 11:57:29 · 179 阅读 · 0 评论 -
mybatis关联查询
<!-- 一对一关联查询 以订单为中心返回用户 public List<Orders> selectOrders();注意关联查询映射不能少写全都得自己写--> <resultMap id="order" type="pojo.Orders"> <id column="id" property="id&quo原创 2018-09-07 17:05:47 · 97 阅读 · 0 评论 -
springmvc对Restful的支持
什么是RestfulRestful架构,就是目前最流行的一种互联网软件架构。它结构清晰、符合标准、易于理解、扩展方便,所以正得到越来越多网站的采用。Restful(即Representational State Transfer的缩写)其实是一个开发理念,是对http的很好地诠释。1、对URL进行规范,写Restful格式的URL非Rest的URL:http://.../query...原创 2018-09-13 17:32:30 · 134 阅读 · 0 评论 -
springmvc之拦截器
概念: Spring Web MVC的处理器拦截器类似于Servlet开发中的过滤器Filter,用于对处理器进行预处理和后处理。拦截器定义实现HandlerInterceptor接口,如下:public class HandlerInterceptor implements org.springframework.web.servlet.HandlerInterceptor { ...原创 2018-09-13 21:08:08 · 135 阅读 · 0 评论 -
总结 写代码步骤
代码也打了不少了,如何写出优秀的代码呢,在这里我呢将自己的一点心得记录了一下,让刚进入计算机的新朋友能参考一下。写代码第一步先想,也就是思考,先把问题的前因后果,解决办法想清楚再开始敲代码,这样代码的bug会大量减少。接下来,来干货1、第一步 思考解决问题的办法,将其解决步骤以流程图的方式表达出来。此步骤指把解决问题的整体过程宏观表达出来,从宏观角度去思考问题,确定解决问题思路的正...原创 2018-10-11 14:44:02 · 4561 阅读 · 1 评论 -
Springmvc之参数绑定
spring参数绑定过程概念:从客户端请求key/value数据,经过参数绑定,将key/value数据绑定到controller方法形参上。springmvc中,接受页面提交的数据是通过方法形参来接收,而不是在controller类定义成员变量来接收第一步: 客户端请求:key/value请求第二步:处理器适配器调用springmvc 提供参数绑定组件将key/value...原创 2018-09-12 14:56:24 · 143 阅读 · 0 评论 -
mybatis 之Mapper动态代理开发
Mapper接口开发需要遵循以下规范:Mapper.xml文件中的namespace与mapper接口的类路径相同。 Mapper接口方法名和Mapper.xml中定义的每个statement的id相同 Mapper接口方法的输入参数类型和mapper.xml中定义的每个sql 的parameterType的类型相同 Mapper接口方法的输出参数类型和mapper.xml中定义的每个s...原创 2018-09-06 16:01:42 · 128 阅读 · 0 评论 -
Mybatis增删改查基础配置及测试代码
user.xml<?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"><!--写S原创 2018-09-06 15:00:42 · 337 阅读 · 0 评论 -
二、注册对象到容器
分两个步骤:第一步将对象在spring配置文件中配置<?xml version="1.0" encoding="UTF-8"?><beans xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://www.springframework.org/schema/beans" xsi:sche...原创 2018-09-04 11:55:05 · 153 阅读 · 0 评论 -
IOC&DI
IOC:Inverse Of Control:反转控制直接理解将我们创建对象的方式反转了。以前对象的 创建是由开发人员自己维护,依赖关系也是自己注入使用spring之后,对象的创建以及依赖关系可以由spring完成创建以及注入反转控制就是反转了对象的创建方式,从我们自己创建反转给了程序。DI:Dependency Injection 依赖注入实现IOC思想需要DI作支持...原创 2018-09-04 14:39:33 · 148 阅读 · 0 评论 -
BeanFactory&ApplicationContext
BeanFactory接口(已经过时):1、spring原始接口,针对原始接口的实现类功能较为单一2、BeanFactory接口实现类的容器,特点是每次在获得对象时才会创建对象ApplicationContext:1、每次容器启动时就会创建容器中配置的所有对象,并提供更多功能。2、从类路径下加载配置文件:ClassPathXmlApplicationContext3、从硬盘...原创 2018-09-04 15:43:27 · 80 阅读 · 0 评论 -
Mybatis逆向工程
第一步 配置所需依赖<dependencies> <dependency> <groupId>org.mybatis.generator</groupId> <artifactId>mybatis-generator-core</artifactId> <ve...原创 2018-09-07 20:52:03 · 173 阅读 · 0 评论 -
Bean元素及三种对象创建方式
Bean元素:使用该元素描述需要spring容器管理的对象 name属性:给被管理的对象起个名字,获得对象时使用 class属性:被管理对象的完整类名 id属性:与name属性一模一样,名称不可重复,不能使用特殊字符 结论:尽量使用name属性。 三种对象创建方式1、空参构造<!--创建方式1:空参构造创建--> <bea...原创 2018-09-05 09:38:07 · 190 阅读 · 0 评论 -
Bean元素进阶之scope属性
scope是在配置spring的bean中的一个属性它主要应用有4个取值singleton(默认值) 单例对象 被标识为单例的对象在spring容器中只会存在一个实例prototype:多例原型 被标识为多例的对象,每次获得才会创建,每次创建都是新的对象。整合struts2时,ActionBean必须配置为多例的。request:web环境下,对象与request生命周期一致...原创 2018-09-05 10:28:28 · 229 阅读 · 0 评论 -
spring生命周期及模块化配置
<!--创建方式1:空参构造创建--> <bean name="user" class="com.evergrande.User" init-method="init" destroy-method="destroy" ></bean>@test public void fun5() { Class原创 2018-09-05 10:50:37 · 132 阅读 · 0 评论 -
Springmvc之配置
在web.xml中配置前端控制器<!--配置前端控制器--> <servlet> <servlet-name>springmvc</servlet-name> <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-...原创 2018-09-11 16:53:11 · 99 阅读 · 0 评论 -
springmvc之@RequestMapping 以及Controller返回值讲解
RequestMapping注解除了正常匹配URL映射外有几个作用:1、窄化请求映射在controller类上给一个根路径2、请求方法限定在使用@RequestMapping(value="路径" method={request.GET,request.POST}) Controller方法的返回值1、返回ModelAndView需要方法结束时,定义ModelAnd...原创 2018-09-11 19:34:22 · 1253 阅读 · 0 评论 -
spring属性注入
spring主要有4种注入方式:1、set方法注入<!--set方式注入--> <bean name="user" class="com.evergrande.User"> <property name="name" value="jack"></property> &原创 2018-09-05 14:45:22 · 93 阅读 · 0 评论 -
spring集合类型注入
<!--复杂类型注入主要是集合类型--> <!--数组类型--> <bean name="col-arr" class="com.evergrande.injection.Collection"> <!--如果数组中只准备注入一个元素直接用value/ref--> <!--<pr原创 2018-09-05 15:23:22 · 526 阅读 · 0 评论 -
Springmvc 框架懒人解析(一看就懂)
Springmvc 框架懒人解析(一看就懂)第一步:发起请求到前端控制器(DispatcherServlet)第二步:前端控制器请求HandlerMapping查找Handler(可以根据xml配置、注解进行查找)第三步:处理器映射器HandlerMapping向前端控制器返回Handler第四步:前端控制器调用处理器适配器去执行Handler第五步:适配器去执行Handl...原创 2018-09-09 20:19:33 · 314 阅读 · 0 评论 -
LeetCode之最接近的三数之和
题目描述:给定一个包括 n 个整数的数组 nums 和 一个目标值 target。找出 nums 中的三个整数,使得它们的和与 target 最接近。返回这三个数的和。假定每组输入只存在唯一答案。例如,给定数组 nums = [-1,2,1,-4], 和 target = 1.与 target 最接近的三个数的和为 2. (-1 + 2 + 1 = 2).public int ...原创 2018-11-26 14:57:43 · 141 阅读 · 0 评论