![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
java
文章平均质量分 83
没有刺的仙人掌
人的一切痛苦,本质上都是对自己无能的痛苦
展开
-
SpringBoot与搜索框架elasticsearch
搜索知识和搜索框架elasticsearch介绍 1.常见的搜索方法 mysql:like 模糊,性能问题, solr:针对企业,Lucene elasticsearch:针对数据量特别大,PB,TB 纯java开发,springboot使用,5.6版本 ...原创 2019-09-02 18:23:14 · 288 阅读 · 0 评论 -
spring和mybatis整合
整合思路需要spring通过单例方式管理SqlSessionFactory。spring和mybatis整合生成代理对象,使用SqlSessionFactory创建SqlSession。(spring和mybatis整合自动完成)持久层的mapper都需要由spring进行管理。 整合环境创建一个新的java工程(接近实际开发的工程结构)jar包:mybatis3.2...原创 2019-06-17 20:35:22 · 328 阅读 · 0 评论 -
MyBatis学习----查询缓存
什么是查询缓存? mybatis提供查询缓存,用于减轻数据压力,提高数据库性能。 mybaits提供一级缓存,和二级缓存。 一级缓存是SqlSession级别的缓存。在操作数据库时需要构造 sqlSession对象,在对象中有一个数据结构(HashMap)用于存储缓存数据。不同的sqlSession之间的缓存数据...原创 2019-06-17 20:29:56 · 149 阅读 · 0 评论 -
MyBatis学习----延迟加载
什么是延时加载? resultMap可以实现高级映射(使用association、collection实现一对一及一对多映射),association、collection具备延迟加载功能。需求:如果查询订单并且关联查询用户信息。如果先查询订单信息即可满足要求,当我们需要查询用户信息时再查询用户信息。把对用户信息的按需去查询就是延迟加载。延迟加载:先从单表查...原创 2019-06-17 20:09:21 · 121 阅读 · 0 评论 -
MyBatis学习----高级映射
订单商品数据模型 以下代码以该结构进行编写一对一查询 1.查询订单信息,关联查询创建订单的用户信息 sql查询语句:SELECT orders.*, USER.username, USER.sex,USER.address FROM orders, USER WHERE orders.user_i...原创 2019-06-17 19:58:36 · 127 阅读 · 0 评论 -
SSH整合
jar整合struts:2.3.15.3 hibernate : 3.6.10 spring: 3.2.0 1.struts:struts-2.3.15.3\apps\struts2-blank\WEB-INF\lib模板技术 ,一般用于页面静态化freemarker:扩展名:*.ftlvelocity :扩展名 *.vm...原创 2019-06-11 14:14:00 · 162 阅读 · 0 评论 -
Spring学习----整合Junit与整合web
整合Junit 1.导入jar包 基本 :4+1 测试:spring-test...jar 2.让Junit通知spring加载配置文件 3.让spring容器自动进行注入修改测试类@RunWith(SpringJUnit4ClassRunner.cla...原创 2019-06-11 13:40:50 · 132 阅读 · 0 评论 -
Spring学习----事务管理
事务相关知识点 事务:一组业务操作ABCD,要么全部成功,要么全部不成功。 特性:ACID 原子性:整体 一致性:完成 隔离性:并发...原创 2019-06-11 13:35:20 · 117 阅读 · 0 评论 -
Spring学习----JdbcTemplate
JdbcTemplate介绍 spring 提供用于操作JDBC工具类,类似:DBUtils。 依赖 连接池DataSource (数据源)JdbcTemplate使用前提 1.创建表create database ee19_spring_day02;use ee19_...原创 2019-06-11 13:06:48 · 88 阅读 · 0 评论 -
Spring学习----AspectJ
AspectJ介绍 AspectJ是一个基于Java语言的AOP框架 Spring2.0以后新增了对AspectJ切点表达式支持 @AspectJ 是AspectJ1.5新增功能,通过JDK5注解技术,允许直接在Bean类中定义切面。新版本Spring框架,建议使用AspectJ方式来开发AOP 主要用...原创 2019-06-11 12:23:15 · 333 阅读 · 0 评论 -
Servlet学习----http响应
响应头头信息 描述 Allow 这个头信息指定服务器支持的请求方法(GET、POST 等)。 Cache-Control 这个头信息指定响应文档在何种情况下可以安全地缓存。可能的值有:public、private或no-cache等。Public 意味着文档是可缓存,Private 意味着文档是单个用户私用文档,且只能存储在私有(非共享)缓存中,no-cache...原创 2019-06-04 21:49:36 · 170 阅读 · 0 评论 -
Servlet学习----http请求
tcp/ip协议:专注的是客户端和服务器之间数据是否传输成功。http协议:是在tcp/ip协议的基础上封装的一套协议,专注于客户端和服务端数据传输的格式是否一致。HTTP请求头头信息 描述 Accept 这个头信息指定浏览器或其他客户端可以处理的 MIME 类型。值image/png或image/jpeg是最常见的两种可能值。 Accept-Charset...原创 2019-06-04 21:30:38 · 104 阅读 · 0 评论 -
MyBatis学习----mapper.xml映射文件
Mapper.xml映射文件中定义了操作数据库的sql,每个sql是一个statement,映射文件是mybatis的核心。parameterType(输入类型) 1.#{}与${} #{}实现的是向prepareStatement中的预处理语句中设置参数值,sql语句中#{}表示一个占位符即?。<!...原创 2019-06-16 20:31:27 · 395 阅读 · 0 评论 -
MyBatis学习----mybatis开发dao
Dao开发方法 使用Mybatis开发Dao,通常有两个方法,即原始Dao开发方法和Mapper接口开发方法。 1.需求将下边的功能实现Dao: 根据用户id查询一个用户信息 根据用户名称模糊查询用户信息列表 添加用户信息 2.SqlSession的使用范围 SqlSession中封装了对数据库的操作,如...原创 2019-06-16 19:52:10 · 199 阅读 · 0 评论 -
MyBatis学习----mybatis介绍
MyBatis介绍MyBatis 本是apache的一个开源项目iBatis, 2010年这个项目由apache software foundation 迁移到了google code,并且改名为MyBatis,实质上Mybatis对ibatis进行一些改进。 MyBatis是一个优秀的持久层框架,它对jdbc的操作数据库的过程进行封装,使开发者只需要关注 SQL 本身,而不需要花费精力去...原创 2019-06-16 19:35:46 · 118 阅读 · 0 评论 -
MyBatis学习----使用mybatis对单表进行操作
实现以下功能:根据用户id查询一个用户信息 根据用户名称模糊查询用户信息列表 添加用户 更新用户 删除用户环境java环境:jdk1.7.0_72 eclipse:indigo mysql:5.1 mybatis运行环境(jar包):从https://github.com/mybatis/mybatis-3/releases下载,3.2.7版本 lib下:依赖包 ...原创 2019-06-16 19:27:53 · 463 阅读 · 0 评论 -
单独使用jdbc编程问题总结
jdbc编程步骤:加载数据库驱动 创建并获取数据库链接 创建jdbc statement对象 设置sql语句 设置sql语句中的参数(使用preparedStatement) 通过statement执行sql并获取结果 对sql执行结果进行解析处理释放资源(resultSet、preparedstatement、connection)Public static void m...原创 2019-06-16 18:53:00 · 126 阅读 · 0 评论 -
Spring学习----面向切面编程(AOP)
AOP介绍 1.什么是AOP?在软件业,AOP为Aspect Oriented Programming的缩写,意为:面向切面编程,通过预编译方式和运行期动态代理实现程序功能的统一维护的一种技术。AOP是OOP(面向对象编程)的延续,是软件开发中的一个热点,也是Spring框架中的一个重要内容,是函数式编程的一种衍生范型。利用AOP可以对业务逻辑的各个部分进行隔离,从而...原创 2019-06-11 12:01:17 · 116 阅读 · 0 评论 -
MyBatis学习----逆向工程
什么是逆向工程 mybaits需要程序员自己编写sql语句,mybatis官方提供逆向工程 可以针对单表自动生成mybatis执行所需要的代码(mapper.java,mapper.xml、po..)企业实际开发中,常用的逆向工程方式:由于数据库的表生成java代码。Mybatis逆向工程 使用官方网站的mapper自动生成工具mybatis-ge...原创 2019-06-17 20:46:54 · 140 阅读 · 0 评论 -
SpringMVC学习----参数绑定
spring参数绑定过程 从客户端请求key/value数据,经过参数绑定,将key/value数据绑定到controller方法的形参上。 springmvc中,接收页面提交的数据是通过方法形参来接收。而不是在controller类定义成员变更接收!!!!默认支持的类型 直接在controller方法形参上定义下边类型...原创 2019-06-24 20:44:43 · 88 阅读 · 0 评论 -
SpringBoot整合定时任务和异步任务处理
常见定时任务区别 1、常见定时任务 Java自带的java.util.Timer类 timer:配置比较麻烦,时间延后问题 timertask:不推荐 2、Quartz框架 配置更简单 xml或者注解 3、SpringBoot使用注解方式开启定时任务...原创 2019-08-31 19:40:28 · 167 阅读 · 0 评论 -
Spring框架面试题
1.什么是Spring框架?2.列举一些重要的Spring模块?(7点)3.简要说明IOC与AOP的理解?4.SpringAOP与AspectJAOP区别?5.Spring中bean的作用域有?(5点)6.单例 bean 线程问题?7.spring bean的生命周期?(13点)8.谈谈spring MVC的理解?9.Spring MVC的工作原理?(8点)10...原创 2019-08-31 10:32:45 · 166 阅读 · 0 评论 -
JAVA并发进阶面试题
1.什么是synchronized关键字?2.synchronized关键字的使用方式?(3点)3.双重检验锁方式实现单例模式4.synchronized关键字的底层原理5.jdk1.6之后对synchronized关键字做了哪些优化?6.锁主要存在的四种状态?7.synchronized和ReentrantLock的区别?(4点)8.volatile 关键字的主要作用...原创 2019-08-28 16:55:09 · 162 阅读 · 0 评论 -
SpringBoot2.x持久化数据方式介绍
介绍近几年常用的访问数据库的方式和优缺点 1、原始java访问数据库 开发流程麻烦 1、注册驱动/加载驱动 Class.forName("com.mysql.jdbc.Driver") 2、建立连接 Connection con = Driver...原创 2019-08-27 17:52:11 · 233 阅读 · 0 评论 -
常用的SpringBoot2.x模板引擎和官方推荐案例
常用的SpringBoot2.x模板引擎 模板引擎(这里特指用于Web开发的模板引擎)是为了使用户界面与业务数据(内容)分离而产生的,它可以生成特定格式的文档,用于网站的模板引擎就会生成一个标准的HTML文档。 1、JSP(后端渲染,消耗性能) Java Server Pages 动态网页技术,由应用服务器中的JSP引擎来编译和执行,再...原创 2019-08-27 16:49:02 · 2122 阅读 · 0 评论 -
SpringBoot里面Filter讲解
filter简单理解: 过滤器实际上就是对web资源进行拦截,做一些处理后再交给下一个过滤器或servlet处理通常都是用来拦截request进行处理的,也可以对返回的response进行拦截处理。大概流程图如下:应用场景:自动登录 统一设置编码格式 访问权限控制 敏感字符过滤等SpringBoot启动默认加载的Filter ...原创 2019-08-26 13:02:49 · 445 阅读 · 0 评论 -
SpringBoot测试
讲解SpringBoot的单元测试 1、引入相关依赖 <!--springboot程序测试依赖,如果是自动创建项目默认添加--> <dependency> <groupId>org.springframework.boot</groupI...原创 2019-08-21 23:08:33 · 114 阅读 · 0 评论 -
SpringBoot注解配置文件自动映射到属性和实体类
讲解使用@value注解配置文件自动映射到属性和实体类 1、配置文件加载 方式一 1、Controller上面配置 @PropertySource({"classpath:resource.properties"}) 2、增加属性 @Value...原创 2019-08-21 22:20:25 · 662 阅读 · 0 评论 -
SpringBoot2.x使用Dev-tool热部署
SpringBoot2.x使用Dev-tool热部署 简介:介绍什么是热部署,使用springboot结合dev-tool工具,快速加载启动应用。 就是已经运行了项目,更改之后,不需要重新tomcat,但是会清空内存,重新打包,重新解压war包运行,可能好处是一个tomcat多个项目,不必因为tomcat停止而停止其他的项目。 官方地址:https://...原创 2019-08-21 17:29:21 · 151 阅读 · 0 评论 -
SpringBoot打包
打包成jar包,需要增加maven依赖 <build> <plugins> <plugin> <groupId>org.springframework.boot</groupId> &...原创 2019-08-21 16:35:31 · 93 阅读 · 0 评论 -
SpringBoot文件上传
前端页面:upload.html<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title>上传</title></head><body> <form enctype="multip...原创 2019-08-20 21:29:34 · 107 阅读 · 0 评论 -
SpringBoot2.x目录文件结构讲解
1、目录讲解 src/main/java:存放代码 src/main/resources static: 存放静态文件,比如 css、js、image, (访问方式 http://localhost:8080/js/main.js) templates:存放静态页面jsp,html,tpl ...原创 2019-08-14 22:23:21 · 210 阅读 · 0 评论 -
SpringBoot注解详解-----@RequestMapping详解
@RequestMapping详解 RequestMapping是一个用来处理请求地址映射的注解,可用于类或方法上。用于类上,表示类中的所有响应请求的方法都是以该地址作为父路径。 RequestMapping注解有六个属性: value, method; value: 指定请求的实际地址,指定的地址可以是URI Template 模式(...原创 2019-08-14 10:25:43 · 3557 阅读 · 0 评论 -
Servlet学习----servlet类
Java Servlet 是运行在 Web 服务器或应用服务器上的程序,它是作为来自 Web 浏览器或其他 HTTP 客户端的请求和 HTTP 服务器上的数据库或应用程序之间的中间层。使用 Servlet,您可以收集来自网页表单的用户输入,呈现来自数据库或者其他源的记录,还可以动态创建网页。Java Servlet 通常情况下与使用 CGI(Common Gateway Interface...原创 2019-06-04 20:48:00 · 187 阅读 · 0 评论 -
Tomcat安装与配置
一、Tomcat安装 1.进入官网下载http://tomcat.apache.org/下载解压版Tomcat。 2.将下载的Tomcat解压到指定目录。二.Tomcat的目录结构 bin:目录存放一些启动运行Tomcat的可执行程序和相关内容。 conf:存放关于Tomcat服务器的全局配置。 ...原创 2019-06-04 19:37:00 · 138 阅读 · 0 评论 -
springmvc和mybatis整合
使用springmvc和mybatis完成商品列表查询。springmvc+mybaits的系统架构:第一步:整合dao层 mybatis和spring整合,通过spring管理mapper接口。 使用mapper的扫描器自动扫描mapper接口在spring中进行注册。第二步:整合service层 通过spring管理 ...原创 2019-06-20 12:13:26 · 291 阅读 · 0 评论 -
Struts学习----封装请求参数
struts2使用servletapi的3种方式 1.action类实现 ServletContextAware,ServletRequestAware,ServletResponse 这三个接口public class Demo1Action extends ActionSupport implements ServletRequestAware,Se...原创 2019-06-08 12:19:38 · 142 阅读 · 0 评论 -
Struts学习----action访问
动态方法调用 格式: action名称!方法名称.action 例如:bookAction!add.action 动态方法调用步骤:struts.xml 配置 <action name="bookAction" class="cn.itcast.b_demo.BookAction"> <re...原创 2019-06-07 21:16:53 · 145 阅读 · 0 评论 -
Struts学习----struts2配置文件详解
struts2配置文件介绍1. default.properties :用于配置struts 常量。例如:编码 2. struts-default.xml :struts提供的默认核心配置文件,struts大部分功能都在此配置文件中。 3.struts-plugin.xml : struts插件核心配置文件,struts整合其他框架或工具。 * 以上三个文件,用户自...原创 2019-06-07 20:59:55 · 223 阅读 · 0 评论 -
Struts学习----struts2架构详解
struts介绍 Struts 2是在 struts 1和WebWork的技术基础上进行了合并的全新的Struts 2框架。lStruts 2以WebWork为核心,采用拦截器的机制,来处理用户的请求,这样的设计也使得业务逻辑控制器能够与ServletAPI完全脱离开。 Struts和Webwork同为服务于Web的一种MVC框架。 ...原创 2019-06-07 20:28:02 · 245 阅读 · 0 评论