- 博客(38)
- 收藏
- 关注
原创 面试技巧
1,ArrayList和LinkList的区别 ArrayList(数组结构): 优点:get和set调用花费常数时间,也就是查询的速度快; 缺点:新项的插入和现有项的删除代价昂贵,也就是添加删除的速度慢 LinkedList(链表结构): 优点:新项的插入和和现有项的删除开销很小,即添加和删除的速度快 缺点:对get和set的调用花费昂贵,不适合做查询 2,Collection接口的remove...
2019-03-05 10:16:31
77
原创 shiro入门
什么是shiro shiro是apache的一个开源框架,是一个权限管理的框架,实现 用户认证、用户授权。 spring中有spring security (原名Acegi),是一个权限框架,它和spring依赖过于紧密,没有shiro使用简单。 shiro不依赖于spring,shiro不仅可以实现 web应用的权限管理,还可以实现c/s系统, 分布式系统权限管理,shiro属于轻量框架,越...
2018-12-30 10:41:29
79
原创 JSR303和jso
Springmvc的表单验证 客户端表单验证,代码写在js上,容易被攻击 服务端表单验证 org.hibernate hibernate-validator 5.0.2.Final 参考配置 @Null 限制只能为null @NotNull 限制必须不为null @AssertFalse 限制必须为false @AssertTrue 限制必须为tru...
2018-12-30 10:39:41
115
原创 国际化和文件上传
国际化(internationalization) 简称i18n,是一种让软件在开发阶段就支持多种语言的技术 java.util.Locale 语言代码_国家代码 注:国家代码可省略 zh_CN ResourceBundle加载资源文件(中英双语) i18n_zh_CN.properties i18n_en_US.properties //test是属性文件的名字,不写语言代码、国家代...
2018-12-30 10:38:24
93
原创 关联关系映射
回顾: mybatis与ehcache的整合 导入相关依赖(ehcache、mybatis-ehcache的整合,spring-support) spring-ehcache(cachemanagerfactory ehcache.xml cachemanager) 在spring-mybatis文件中的sqlsessionfactory中开启二级缓存 在*Mapper.xml中开启二级缓存 ...
2018-12-24 20:46:09
97
原创 springmvc入门
maven helper 什么是springMVC? Spring Web MVC是一种基于Java的实现了MVC设计模式的、请求驱动类型的、轻量级Web框架。 SpringMVC处理请求的流程 2.1 首先用户发送请求–>DispatherServlet 2.2 DispatcherServlet–>HandlerMapping 2.3 DispatcherServlet–&...
2018-12-24 20:44:03
69
原创 Mybatis整合Redis实现二级缓存
什么样的数据需要缓存 很少被修改或根本不改的数据 业务场景比如:耗时较高的统计分析sql、电话账单查询sql等 ehcache是什么 Ehcache 是现在最流行的纯Java开源缓存框架,配置简单、结构清晰、功能强大 注1:本章介绍的是2.X版本,3.x的版本和2.x的版本API差异比较大 ehcache的特点 4.1 够快 Ehcache的发行有一段时长了,经过几年的努力和不计其数的性能...
2018-12-24 20:38:25
59
原创 mybatis与spring集成
hibernate与spring的整合过程: 1、导入hibernate、spring的pom依赖 2、spring-hibernate.xml 数据库信息文件的注册 数据库连接池C3P0的配置 sessionfactory工厂相关信息的配置(hibernate.cfg.xml) 数据源 数据方言 show_sql,format_sql 映射文件配置 整...
2018-12-24 20:35:31
53
原创 动态sql和分页
1.mybatis动态sql 1.1 if 1.2 trim 1.3 foreach 1.4 其他 choose/set/where 2.模糊查询(3种方式) 2.1 参数中直接加入%% 2.2 使用${...}代替#{...}(不建议使用该方式,有SQL注入风险) 关键:#{...}与${...}区别? 参数类型为字符串,#会在前后加单引号['...
2018-12-16 15:44:05
232
原创 mybatis入门
核心 导入依赖 加入插件(插件依赖、插件文件、Free mybatis plugin、Mybatis generater) 生成代码 代码测试 0、系统环境 JDK版本:1.8 IDE:InterliJ IDEA 2017.2.5 Maven版本:3.5 MyBatis版本:3.X 数据库:MySQL 5.5 mybatis 1.1 mybatis本是apache的一个开源项目iBatis, 2...
2018-12-16 15:41:32
65
原创 Redis-使用Java代码操作Redis
Java访问redis 2.1 添加依赖 redis.clients jedis 2.9.0 2.2 Java连接redis Jedis jedis = new Jedis(ip, port); jedis.auth(“123456”);//权限认证 jedis.ping(); jedis.select(0);//切换数据库 2.3 Java操作redis string(字符串) hash...
2018-12-16 15:39:34
91
原创 IDEA
下载与安装 https://www.jetbrains.com 不装任何插件 破解码 K03CHKJCFT-eyJsaWNlbnNlSWQiOiJLMDNDSEtKQ0ZUIiwibGljZW5zZWVOYW1lIjoibnNzIDEwMDEiLCJhc3NpZ25lZU5hbWUiOiIiLCJhc3NpZ25lZUVtYWlsIjoiIiwibGljZW5zZVJlc3RyaWN0aW9uIj...
2018-12-16 15:36:15
286
原创 redis
1 安装和启动redis服务 1 在Linux中创建目录:/myredis/redis,并将压缩包复制到该目录(winscp) 2 解压压缩文件,并执行make对解压后的文件进行编译 cd /myredis/redis #解压文件 tar -zxvf redis-5.0.0.tar.gz #进入解压后的文件夹 cd redis-5.0.0 #编译 make 3 安装gcc依赖...
2018-12-10 14:15:58
110
原创 AXIS2
使用axis2构建webservice axis2是可以实现webservice的一个插件,使用这个插件可以发布webservice 1:可以使用这个插件来发布webservice,可以看网址:http://clq9761.iteye.com/blog/976029/======个人感觉一般不太适合我们做项目时候使用 2:我们这里将axis2的夹包引入到一个web工程里,运行这个web工程来发布w...
2018-12-10 14:14:48
167
原创 WebService
WebService简介 JDK实现WebService (1)建一个接口Person,创建方法 @WebService //使用@WebService注解标注WebServiceI接口 public interface WebServiceI{ @WebMethod //使用WebMethod注解标注WebService接口中的方法 public String say(String wh...
2018-12-10 14:08:06
79
原创 IOC
什么是spring,它能够做什么? Spring是一个开源框架,它由Rod Johnson创建。它是为了解决企业应用开发的复杂性而创建的。 Spring使用基本的JavaBean来完成以前只可能由EJB完成的事情。 然而,Spring的用途不仅限于服务器端的开发。从简单性、可测试性和松耦合的角度而言,任何Java应用都可以从Spring中受益。 目的:解决企业应用开发的复杂性 功能:使用基本的...
2018-11-04 19:01:00
62
原创 二级缓存
为什么需要缓存 拉高程序的性能 关系型数据库:数据与数据之间存在关系(联系)的数据库 mysql/Oracle、sqlserver 非关系型数据库:数据与数据之间是不存在关系的,key-value 1、基于文件存储的数据库:ehcache 2、基于内存存储的数据库:redis、memcache 3、基于文档存储的数据库:mongodb 什么样的数据需要缓存 很少被修改或根本不改的数据 业务...
2018-11-04 19:00:10
56
原创 高级控件 自动提示文本框与下拉列表
1.高级控件与低级控件区别 是否使用适配器 适配器种类和作用 2.1 种类 数组适配器 ArrayAdapter new ArrayAdapter(this,R.layout.actv_style, names); 简单适配器 SimpleAdapter 也叫“并不简单的简单适配器”_ 自定义适配器 2.2 作用 桥梁 展示 高级控件使用步骤 3.1 获取数据 3.2 创建适配器 3....
2018-10-30 20:31:23
76
原创 hql
什么是hql HQL是Hibernate Query Language的缩写 查全部 hql和sql区别/异同 HQL SQL 类名/属性 表名/列名 区分大小写,关键字不区分大小写 不区分大小写 别名 ...
2018-10-29 20:15:22
61
原创 多对多(2)
数据库的多对多 1.1 数据库中不能直接映射多对多 处理:创建一个桥接表(中间表),将一个多对多关系转换成两个一对多 注1:数据库多表联接查询 永远就是二个表的联接查询 注2:交叉连接 注3:外连接:left(左)/right(右)/full(左右) 主从表:连接条件不成立时,主表记录永远保留,与null匹配 select * from A,B,AB WHERE A.aID=AB.aI...
2018-10-28 16:17:56
116
原创 多对多
数据库的多对多 1.1 数据库中不能直接映射多对多 处理:创建一个桥接表(中间表),将一个多对多关系转换成两个一对多 注1:数据库多表联接查询 永远就是二个表的联接查询 注2:交叉连接 注3:外连接:left(左)/right(右)/full(左右) 主从表:连接条件不成立时,主表记录永远保留,与null匹配 在hibernate中,你只管查询当前表对象即可, hibernat...
2018-10-26 21:54:33
58
原创 一对多
什么是关联(association) 1.1 关联指的是类之间的引用关系。如果类A与类B关联,那么被引用的类B将被定义为类A的属性。例如: public class A{ private B b = new B; public A(){} } 1.2 关联的分类:关联可以分为一对一、一对多/多对一、多对多关联 关联是有方向的 调用此方法 将关联属性自动赋值。 #关键点都在数据库中的外键上面...
2018-10-26 21:48:25
49
原创 hibernate加载策略
对象的三种状态(hibernate管理的对象) 1.1 临时状态 1.2 持久状态 1.3 游离状态 1、hibernate通过管理对象来操作数据库,这里对象指的是持久态的对象 2、各种状态的对象是可以相互转换 一级缓存、快照(orm特性) u = {1 ww 20 2018-5-3 abcd} --> u = {1 qq 17 null xyz} u’ = {1 ww 20...
2018-10-22 22:04:01
61
原创 主键生成策略
hibernate的主键生成器: generator元素:表示了一个主键生成器,它用来为持久化类实例生成唯一的标识 。 1.1 程序员自己控制:assigned 1.2 数据库控制: identity(标识列/自动增长) sequence 1.3 hibernate控制:increment uuid/uuid.hex 1.4 其它:native student id int worker id...
2018-10-21 21:25:20
42
原创 hibernate入门
什么是hibernate ORM框架/持久层框架 object reference mapping dao dao jdbc hibernate jdbc 优势:跨数据库的无缝移植 注1:Object Relational Mapping 如何在项目中添加hibernate支持(手动添加) 2.1 添加hibernate相关依赖 2.2 在resource...
2018-10-18 16:08:53
39
原创 Maven
Maven简单介绍 Apache Maven是个项目管理和自动构建工具,基于项目对象模型(POM)的概念。 作用:完成项目的相关操作,如:编译,构建,单元测试,安装,网站生成和基于Maven部署项目。 什么是自动构建工具? 2.1 .java->.class->run 方式一 javac HelloWorld.java java HelloWorld 方式二 开发工具Ecli...
2018-10-18 15:56:27
48
原创 拦截器与文件上传
Interceptor implements Interceptor extends AbstractInterceptor 与filter的区别:先过filter再过interceptor 文件上传: 三种上传方案 虚拟路径与真实路径 /upload copyFile与copydirectory 0. 文件下载 另存为 直接打开 内容类型 response.setContentType(d...
2018-10-15 21:13:25
77
原创 struts值crud
1、定义baseAction,存放结果码常量,请求、响应、上下文、公用的传值 2、Struts标签的使用 s:iterator S:action S:url S:form s:textfield S:select S:radio S:param s:textarea 1、不直接跳页面,跳子控制器,因为路径问题和*。action配置 2、修改页面弹栈的问题,load出的结果作为跟,属性可以直接取值 ...
2018-10-14 21:40:26
49
原创 struts2标签
set:在ognl上下文的根对象中取result值,赋给test; property: <s:property/>, <!-- 取根对象最上面的对象的属性 --> <s:property value="num1"/>, <!-- 取根对象的cal2对象的num1属性 --> <s:p...
2018-10-13 11:57:54
40
原创 ognl简介
OGNL 1.1 OGNL的全称是Object Graph Navigation Language(对象图导航语言),它是一种强大的表达式语言 1.2 OgnlContext(ongl上下文)其实就是Map (教室、老师、学生) OgnlContext=根对象(1)+非根对象(N) 非根对象要通过"#key"访问,根对象可以省略"#key" 注1:context:英文原意上下文,环境/容器 ...
2018-10-13 11:49:30
87
原创 struts2入门
相当于自定mvc中的action层。 com.zking.framework 配置文件引入dtd不生效,无提示 环境搭建 1.1 jar 1.2 web.xml 1.3 struts.xml struts.xml(核心配置文件) 开发 2.1 Action 2.1.1 不需要指定父类(ActionSupport) 2.1.2 业务方法的定义 public String xxx();//ex...
2018-10-09 20:23:53
87
原创 PullToRefresh
1.2 Clear Project后会报如下错误,修改源代码:“PullToRefreshWebView” 错误: 找不到符号 符号: 方法 floor(float) 位置: 类 FloatMath FloatMath.floor -> Math.floor 1.3 选中自己的工程,例如:“app”然后鼠标右键“open Moduel settings”导入库 1.4 修改layo...
2018-09-22 19:08:22
66
原创 高级控件ListView
BaseAdapter:是所有适配器类的父类,可以对列表项进行最大限度的定制 1.1 自定义适配器中的方法 getCount getView getItem getItemId 1.2 LayoutInflater(布局解析器) –LayoutInflater有三种获得方式,资料中有详细介绍 用来把layout布局文件解析成一个View对象,不可以new,需要使用系统服务获得 inflater ...
2018-09-22 19:00:00
123
原创 jackson和httpcliet
webservice->xml jackson->json jackson 1.1 Java->Json 1.1.1 ObjectMap 1.1.2 JsonGenerator 1.1.3 @JsonIgnore hibernate中一对多、多对多双向关联会出现这种死循环 简介 2.1 HttpClient是Apache Jakarta Common下的子项目,用来提供高...
2018-09-19 22:56:09
164
原创 高级控件, 自动提示文本框与下拉列表
高级控件与低级控件区别 是否使用适配器 适配器种类和作用 2.1 种类 数组适配器 ArrayAdapter new ArrayAdapter(this,R.layout.actv_style, names); 简单适配器 SimpleAdapter 也叫“并不简单的简单适配器”_ 自定义适配器 2.2 作用 桥梁 展示 高级控件使用步骤 3.1 获取数据 3.2 创建适配器 3....
2018-09-19 10:49:26
112
原创 常用控件 图片框与进度条
案例一:消息提示框 1. Toast(吐丝框) 1.1 Toast是Android中的一种简易的消息提示框 1.2 使用这个类的最简单的方法是调用静态方法构造您所需要的一切,并返回一个新的Toast对象。 Toast toast=Toast.makeText(getApplicationContext(), “默认的Toast”, Toast.LENGTH_SHORT)...
2018-09-16 21:51:43
84
原创 Android Studio的小技巧和Android基础
//快捷键 1.重写:Ctrl+o; 2.改字体:File->Settings->Editor->Color->Fonts->Font中修改字体; 3.注释:Ctrl+F 4.格式化代码:Ctrl+Shift+L 5.Ctrl+Shift+V:快速声明变量 6.Ctrl+Shift+s:快速打开设置界面 1.Android的基本组件 1.1 Act...
2018-09-15 20:38:58
297
原创 Android Studio 与夜神模拟器连接
什么是夜神模拟器? 夜神模拟器是北京多点在线科技有限公司开发的一款Android手机游戏模拟器, 运行速度快,使用方便,是一款PC平台玩手游,助攻Android开发的利器 使用Android Studio与夜神模拟器开发调试 2.1 启动android studio 2.2 启动夜神模拟器 2.2.1 cmd打开命令行窗口 2.2.2 切换到夜神安装目录,例如:D:\Program ...
2018-09-11 21:28:16
201
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人