自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Andy丁的博客

分享知识,互相学习!

  • 博客(67)
  • 资源 (1)
  • 收藏
  • 关注

原创 通过Group By按日期求和

业务场景:现有需求需要按时间统计所有订单和所有成功订单,查询条件为扩展字段一。(status=2代表成功)。sql:SELECT c_DATE, COUNT(success) AS sucess, COUNT(*) AS totalFROM (SELECT DATE_FORMAT(CREATE_DATE, '%Y-%m-%d') AS c_DATE, ...

2019-09-18 23:11:08 3119

原创 数据库优化-索引

1.什么是索引索引通俗点来说就好比我们的字典目录,我们可以通过目录快速的定位到我们要查找的字,相对应的我们也需要花费磁盘空间去创建索引。2.如何创建和删除索引(不同的数据库语法会有差异)索引是建立在数据库表上的,他是针对字段来的,所以创建索引的时候我们要指定哪个字段,我们也可以指定多个字段。索引名要唯一。创建:CREATE INDEX 索引名 on 表名(字段1,字段2,...);删除:DROP ...

2018-03-18 22:52:56 329

转载 设计模式-简单工厂模式、工厂模式、抽象工厂模式

简单工厂模式简单工厂模式其实不是一个设计模式,反而比较像一种编程习惯。主要我们定义一个非常简单的类主要负责帮我们生产不同的产品。类图如下:客户端通过简单工厂可以生产出具体产品A,具体产品B,具体产品C。简单工厂:package my.oschina.net.design.factory;public class SimplePizzaFactory { /** * 根据传入...

2018-03-18 17:11:44 290

原创 设计原则-单一职责原则

1.定义    不要存在多余一个导致类变更的原因,即一个类只负责一项职责。 2.问题由来    类T负责两个不同的职责:职责P1,职责P2.当由于职责P1需求发生改变而需要修改类时,有可能导致原本运行正常的职责P2的功能发生故障3.解决方案    3.1分别建立T1和T2类完成P1和P2的功能。    3.2在程序已经写好了的情况下,这样做比较浪费时间,所以说简单的修改T类是一个不错的选择,这样做...

2018-03-16 16:38:39 244 1

转载 java正则表达式的学习

正则表达式定义了字符串的模式。可以用来搜索、编辑或处理文本。并不仅限于某一种语言,但是在每种语言中有细微的差别。正则表达式java.util.regex 包主要包括以下三个类:Pattern 类:pattern 对象是一个正则表达式的编译表示。Pattern 类没有公共构造方法。要创建一个 Pattern 对象,你必须首先调用其公共静态编译方法,它返回一个 Pattern 对象。该方法接受一个正则...

2018-03-16 15:49:42 6088

转载 Comparable和Comparator的区别

  今天博主在翻阅TreeMap的源码,发现其键必须是实现Comparable或者Comparator的接口时产生了一些兴趣,比如在TreeMap中的put方法分别对Comparable和Comparator接口分别进行处理。那么疑问就来了,Comparable和Comparator接口的区别是什么,Java中为什么会存在两个类似的接口?  Comparable和Comparator接口都是用来比...

2018-03-06 23:12:57 220

转载 java泛型深入理解

泛型之前在面向对象编程语言中,多态算是一种泛化机制。例如,你可以将方法的参数类型设置为基类,那么该方法就可以接受从这个基类中导出的任何类作为参数,这样的方法将会更具有通用性。此外,如果将方法参数声明为接口,将会更加灵活。在Java增加泛型类型之前,通用程序的设计就是利用继承实现的,例如,ArrayList类只维护一个Object引用的数组,Object为所有类基类。[java] view plai...

2018-03-05 16:45:59 223

原创 设计模式-单例

1.定义:确保一个类只有一个实例,而且自行实例化并向整个系统提供这个实例。(通过静态函数获取实例)1.单例模式3要素(1)构造函数私有化(2)指向自己实例的私有静态应用(3)以自己实例为返回值的静态的公有的方法。2.单例的两种模式(1)饿汉式(就是已经准备好了,只要去拿)public class Single{ private static Single single

2018-01-10 21:51:03 151

原创 求出现最多的字符串和次数,如有多个全部输出

注:方法有多个这里只是其中一中。1.解题思路(1)引入TreeSet,通过集合找出所有出现的字符串(2)引入ArrayList:快速排序,在通过StringBuffer生成排序后的字符串(3)通过String API中的indexOf()找出第一次出现的下标,lastIndexOf最后一次出现的下标求出其长度。(4)记录第一个出现次数最多的字符(为了计算多个字符相同的情况)

2018-01-10 14:51:08 1132

原创 springboot入门

1.什么是springbootSpring Boot是Spring社区较新的一个项目。该项目的目的是帮助开发者更容易的创建基于Spring的应用程序和服务,让更多人的人更快的对Spring进行入门体验,让Java开发也能够实现Ruby on Rails那样的生产效率。为Spring生态系统提供了一种固定的、约定优于配置风格的框架。Spring Boot具有如下特性:·

2017-12-27 18:40:56 226

原创 在linux环境下配置jdk

首先我们可以去官网下载linux版本的jdk http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html我们将jdk的压缩包拷贝到服务器中 1.首先,我们查看服务器的ip,使用命令:ip a s(centos有效)例如: 2**.在git bash下进入压缩包的目录**,使用命令:

2017-12-27 16:43:01 203

原创 springsecurity小结

1.springsecurity主要工作 (1)登录管理 (2)权限管理 1.1登录管理 springsecurity给我们提供了完整的登录机制包括登录错误提示,退出提示以及,开启CSRF防护,所以所有POST表单都必须包含csrf.token.我们只需要去他的官方文档copy他的表单模板然后我们自己定义样式就可以轻松实现登录的功能。无需关心session回话的管理。

2017-12-20 15:41:45 372

原创 Mybatis之动态sql

MyBatis 的强大特性之一便是它的动态 SQL。如果你有使用 JDBC 或其他类似框架的经验,你就能体会到根据不同条件拼接 SQL 语句有多么痛苦。拼接的时候要确保不能忘了必要的空格,还要注意省掉列名列表最后的逗号。利用动态 SQL 这一特性可以彻底摆脱这种痛苦。通常使用动态 SQL 不可能是独立的一部分,MyBatis 当然使用一种强大的动态 SQL 语言来改进这种情形,这种语言可以

2017-12-13 16:05:20 166

原创 SpringMVC基础(一)

1.SpringMVC概述(1)SpringMVC通过一套MVC注解,让POJO成为处理请求的控制器无需实现任何接口(2)支持REST风格的URI请求,(3)采用松散耦合可拔插主键结构,比其他MVC结构更加灵活可扩展。2.基本步骤(1)导入jar包(2)在web.xml里面配置DispatcherServlet(3)加入SpringMVC的配置文件(4)编写处理请求的处理器,并表标识为处理器(5)...

2017-12-10 23:15:38 169

转载 【spring】OpenSessionInViewFilter解决Hibernate懒加载异常

Hiberante懒加载特性  懒加载的目的:为了减少与数据库的交互,从而提高执行效率。        在Hibernate中,查询方法有两个,分别是get()和load(),这两种方法的不同就是load()拥有懒加载的特性。Load()方法就是在查询某一条数据的时候并不会直接将这条数据以指定对象的形式来返回,而是在你真正需要使用该对象里面的一些属性的时

2017-12-10 17:07:04 222

原创 人事管理系统之基本增删改查的实现以及BaseDao的抽取和封装

1.问题描述对于不同的对象我们都要进行基本的增删改查的操作,这样的话就会写许多重复的代码,所以我们可以把这些公共的方法抽取出来放入BaseDao和BaseDaoImp,我们其他的接口和实现类就只要去继承和实现BaseDao和BaseDaoImp而不需要去自己重复写同样的代码了。2.UML类图3.实现细节和代码public class BaseDaoImp implement

2017-12-09 15:11:38 1327

原创 纯java整合sh

1.首先我们还是得导入相关的jar包这里和普通的sh整合的jar包没什么区别,不过用的是hibernate5的版本。2.我们要写一个配置类AppConfig来代替xml@ComponentScan("com.andy")@Configuration //自动配置@PropertySource("classpath:jdbc.properties") //加载数据库连接的相关参数@

2017-12-07 19:29:43 275

原创 人事管理系统之部门结构树的展示

1.在显示部门时因为存在上下级的关系所有在显示时要进行一定的缩进如图:2.用递归遍历部门树2.1因为一个上级部门对应多个子级部门,子级部门下面又有子级部门,这时候我们可以把部门看成一颗颗的树,把每个顶级部门(没有上级的部门)看成顶点,每个子级部门作为节点,每个子级部门又是其他子级部门的顶点。2.2所以我们遍历树的时候只要遍历树的顶点和子节点就行了,然后把子节点作为顶点传

2017-12-05 20:17:32 4794

原创 java中的拆箱与装箱

如果你在Java1.5下进行过编程的话,你一定不会陌生这一点,你不能直接地向集合(Collections)中放入原始类型值,因为集合只接收对象。通常这种情况下你的做法是,将这些原始类型的值转换成对象,然后将这些转换的对象放入集合中。使用Integer,Double,Boolean等这些类我们可以将原始类型值转换成对应的对象,但是从某些程度可能使得代码不是那么简洁精炼。为了让代码简练,Java 1.

2017-12-02 00:55:32 1092

转载 四种解析xml文档方法的详解(优缺点比较+实例)

众所周知,现在解析XML的方法越来越多,但主流的方法也就四种,即:DOM、SAX、JDOM和DOM4J下面首先给出这四种方法的jar包下载地址DOM:在现在的Java JDK里都自带了,在xml-apis.jar包里SAX:http://sourceforge.net/projects/sax/JDOM:http://jdom.org/downloads/index

2017-11-30 22:47:17 396

原创 人事管理系统之系统模块管理(一)

1.0模块整体的实体设计一、1.starUML结构类图2.设计说明1,有几个实体?一般是一组增删改查对应一个实体。2,实体之间有什么关系?一般是页面引用了其他的实体时,就表示与这个实体有关联关系。3,每个实体中都有什么属性?1,主键。2,关联关系属性。在类图中,关联关系是一条线,有两端,每一端对应一个表达此关联关系的属性。有几个端指向本类,本类中就有

2017-11-28 01:01:26 4564

原创 javaScript基础 (四)

1.1.1. for in语句for 语句是严格的迭代语句,用于枚举对象的属性或者遍历一个数组的元素。它的语法如下:for (property in expression) statement例子:for (sProp in window) {  alert(sProp);}这里,for-in 语句用于显示window 对象的所有属性。在java中for(i

2017-11-25 23:56:42 233

原创 javaScript基础(三)

1.1. 运算符(operator)1.1.1. 算术加法运算符 加法运算符由加号(+)表示:ECMAScript 中的加法也有一些特殊行为:    某个运算数是 NaN,那么结果为NaN。字符串拼接    如果两个运算数都是字符串,把第二个字符串连接到第一个上。    如果只有一个运算数是字符串,把另一个运算数转换成字符串,结果是两个字符串连接成的字符串。

2017-11-24 16:41:26 187

原创 JavaScript基础(二)

1..JavaScript语法1.1.1. 区分大小写与 Java 一样,变量、函数名、运算符以及其他一切东西都是区分大小写的。比如:变量 test 与变量 TEST 是不同的。1.1.2. 注释Java:      //    /*  */    /**  */HTML:    CSS:      /*   */JavaScript:ECMAS

2017-11-24 15:05:23 215

原创 javaScript基础(一)

1.0  javascrip简介JavaScript 是属于网络的脚本语言!JavaScript被数百万计的网页用来改进设计、验证表单、检测浏览器、创建cookies,以及更多的应用。JavaScript是因特网上最流行的脚本语言。注:javascript运行必须依赖于宿主环境语言,即页面语言HTML。1.0.1 javascrip特点1. 安全性(不允许直

2017-11-24 14:48:47 206

原创 人事管理项目第一天之开发环境搭建

1.准备开发环境在MyEclipse中新建一个Web Project,名称为ItcastHR,设置工程的默认编码为utf-8 。创建数据库itcastHR,注意编码要支持中文,比如设定为utf8。2.添加框架的开发环境Junitstruts2.3配置struts.xml在web.xml中配置核心过滤器struts2org.apache.struts2.dis

2017-11-20 13:21:47 324

原创 人事管理系统第一天之整体设计

1.软件开发流程需求调研分析概要设计与详细设计编码测试部署与维护2.整体设计1.分层:(1)表示层也叫视图层:基于web的jsp、servlet、struts。        (2)业务逻辑层:Pojo(普通java对象这里指Service,Manage)、spring        (3)数据访问层:hibernate,jdbc2.所用技术     

2017-11-20 12:39:10 504

原创 代理模式

1.代理模式2.静态代理3.动态代理4.Cglib代理

2017-11-12 22:44:48 133

转载 java异常解决方案

一、Hibernate(1)org.hibernate.TransientObjectException: object references an unsaved transient instance....(2)org.springframework.orm.hibernate3.HibernateSystemException: Don't change the reference

2017-11-12 19:26:12 698

原创 解决java.lang.IncompatibleClassChangeError

1.在做手动实现aop编程练习的时候遇到了这个问题,从错误信息可以看出,这是因为实现了一个类,众所周知类用来继承,接口用来实现。可以看到,Eclipse在Workspace中发现了3个这样的类,而且包名类名都完全一样。可以看到,在spring的3.1.1版本中,这个叫ClassVisitor的类其实是一个接口,这个接口被放在spring-asm模块中。而在3.2.5,这个ClassVisi

2017-11-12 17:28:37 2711

原创 spring基础

1.回顾struts与hibernate2.Spring框架3.Spring框架概述

2017-11-05 18:19:30 143

转载 Github教程

原文 http://www.eoeandroid.com/thread-274556-1-1.html【初识Github】首先让我们大家一起喊一句“Hello Github”。YEAH!就是这样。Git是一个分布式的版本控制系统,最初由Linus Torvalds编写,用作Linux内核代码的管理。在推出后,Git在其它项目中也取得了很大成功,尤其是在Ruby社区中。目前,

2017-11-04 19:47:41 191

原创 servlet生命周期

servlet生命周期1.构造方法:创建servlet对象,第一次访问servlet对象时时,只调用一次。2.init方法(有参):在创建完servlet对象后。只调用一次。注意:会调用无参的构造方法。3.service方法:为servlet提供服务的放法。4.destroy方法:tomcat服务器停止或者web应用重新部署,servlet对象销毁,destroy方法被调用。

2017-11-04 15:14:24 178

原创 xml基础

xml基础什么是xml,为什么学习xml?xml常见应用xml语法

2017-11-04 12:25:57 257

原创 struts中的ognl表达式

Ognl表达式语言概述l OGNL表达式       OGNL是Object Graphic Navigation Language(对象图导航语言)的缩写,它是一个开源项目。Struts2框架使用OGNL作为默认的表达式语言。l OGNL优势      1、支持对象方法调用,如xxx.doSomeSpecial();       2、支持类静态的方

2017-10-28 17:07:55 325

原创 struts数据校验的两种方式

Struts数据效验表单数据的验证:前台验证:主要是通过JS验证, 表达数据是否合法!后台验证:通过后台java代码进行验证!  Struts也提供了数据效验的方式!Struts数据效验, 通过拦截器完成:name="validation" class="org.apache.struts2.interceptor.validation.AnnotationVa

2017-10-25 23:24:45 416

原创 struts2中的数据传输

前言:在servlet中我们通常通过域对象来对数据进行前后端的交互在前台通过el表达式获取后台传递过来的数据,在struts2中对这些域对象进行了解耦,他们相对于原来的域对象少了某些功能,比如说通过request请求获取请求的地址等,也就是说他们的功能仅限于传递数据,这使得我们进行测试的时候无需依赖web容器(tomcat服务器)。换句话说我们可以直接在Action里面写一个main()方法进

2017-10-22 23:15:15 420

原创 使用maven管理jar包

1.Maven是一个项目管理工具,它包含了一个项目对象模型 (Project Object Model),一组标准集合,一个项目生命周期(Project Lifecycle),一个依赖管理系统(Dependency Management System),和用来运行定义在生命周期阶段(phase)中插件(plugin)目标(goal)的逻辑。当你使用Maven的时候,你用一个明确定义的项目对象模

2017-10-22 15:55:09 8233 1

原创 struts基础

struts2框架基础

2017-10-22 11:19:41 592

原创 struts实现文件上传与下载

一.实现上传 二。实现下载

2017-10-17 00:59:13 326

搭建hibernate所需要的jar包

搭建hibernate所需要的jar包

2017-08-21

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除