自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

rock154的博客

Think Big, Think Long.

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

原创 Idea 大法好

1)多数改动redeploy 即可生效,但有些改动需要重启Server 才生效,如修改SpringMVC controller 方法的形参注解,还有添加依赖后。有些类如Controller 修改后要redeploy 才生效。2)Tomcat 热布署:有一个on frame default deactivation 的选项,Idea 失去焦点后即自动更新资源文件或自动更新资源文件和类,对应两个选项U...

2018-03-26 21:34:40 338

原创 如何理解 Scala 隐式转换 隐式参数

隐式转换和隐式参数是 scala 非常有特色的功能,也是Java等其他编程语言没有的功能。利用隐式转换 可以很方便地来丰富现有类的功能,在编写Akka并发编程、Spark SQL、Flink 等程序时 都会看到隐式转换和隐式参数的身影;但其实现方式有点绕,不太容量理解。以下通过Demo 来说明:实现隐式转换方法的 Demo:目的:File 类本身没有 read 方法,希望代码看起来像 File 有能直接调用的 read 方法一样;实现步骤:1)定义隐式转换方法 File2RichFil.

2021-08-04 18:41:45 139

原创 解决Oracle 无法插入指定ID 问题 (trigger)

工作上遇到一个问题:oracle 迁移至mysql 时,需要一段时间双写两个库作为缓冲阶段,而mysql 没有同oracle 一样的自增ID,就采取了雪花算法生成ID,两库都用其作为ID,

2021-06-13 11:11:00 383

原创 Tomcat 流程梳理

1)Socket是应用层与TCP/IP协议族通信的中间软件抽象层,它是一组接口。    在设计模式中,Socket其实就是一个门面模式,它把复杂的TCP/IP协议族隐藏在Socket接口后面;    对用户来说,一组简单的接口就是全部,让Socket去组织数据,以符合指定的协议。2)新建ServerSocket 对象需要一个参数(port),绑定端口;它的accept()方法的执行将使Server...

2018-05-30 11:50:57 598

原创 解决WebUploader 上传按钮没反应、按F12 才会有反应的问题

遇到了 WebUploader 插件的上传按钮点击无效(此时鼠标在按钮任何位置时,按钮都没变化)、按F12 之后才有反应(此时鼠标在按钮任何位置时,按钮颜色都会变深) 的问题,网上查到一些答案,找到了一种可行的办法。首先出现Bug的原因是插件生成[选择文件]按钮的长宽都是0,所以点击不到;需要重新渲染一下网页,而F12正好有渲染网页的功能。解决办法分以下两步:1)在页面加一段样式:<styl...

2018-05-12 11:23:43 7095 2

原创 Idea 创建分布式 Maven 项目步骤 和 SSM基本配置

Idea (2017.2版) 创建分布式 Maven 项目步骤 & SSM(SpringMVC + Spring + MyBatis) 基本配置;分布式项目主要用于比较大型的、多人合作的项目,小项目可能就没必要这样了。前言:CSDN上看到一篇高阅读量的介绍Idea 分布式项目创建步骤的博客,比较复杂,但自己实际操作发现并没必要那么复杂,可能是因为Idea 的较新版本做了改进。参考博客:ht...

2018-05-08 20:33:52 13277 6

原创 PageHelper 分页插件只用Page、不用PageInfo 的写法

PageHelper 分页插件,学到的写法是得到Page 对象后再转成PageInfo 对象,但Page 是ArrayList 的子类,里面包含了数据列表和分页信息,为什么不能直接用Page 对象做分页呢?问题只是如何在页面取出Page 中数据。经过多次尝试,终于验证这个想法是可行的。0)环境:SpringMVC + Spring + MyBatis。1)mybatis 配置文件添加PageHel...

2018-05-07 20:24:29 9158 6

原创 从IO 到框架(6-2)-Struts2 学生管理系统实战复盘

步骤复盘:1)建数据库和表。2)建实体类,注意用包装类代替基本数据类,如Integer 代替int.3)建Action类,继承ActionSupport;    在此类中调用Service 层,利用IDE 的提示创建Service 接口和实现类,5个基本方法:增、删、改、查多个、查单个,后期加一个getPage() 用于分页。    在Service 实现类调用Dao 层,利用IDE 的提示创建D...

2018-04-30 11:00:30 162 1

原创 Idea Debug 窗口所有按钮详解

近期了解到 Idea 的Debug 功能非常强大,早点知道的话就更好了!本文以SpringMVC 的注解式HelloWorld 为例记录Debug 用法。1)浏览器一个请求"/hello"发出后,经过一系列Java 类中的方法执行,到达手写的Controller。<a href="/hello">Hello SpringMVC</a>    最近一个栈经过的类:JDK 的j...

2018-04-29 17:52:34 21502 8

原创 Spring AOP 实例解析(InvocationHandler 的invoke的proxy 参数作用)

代理模式:为其他对象提供一种代理以便控制对这个对象的访问(所谓控制,就是可以在其调用行为,前后分别加入一些操作)。代理模式分类:1.静态代理(其实质是类的继承,比较容易理解)2.动态代理。用JDK 动态代理实现面向切面编程(还有CGLIB 也可实现动态代理,且不需要真实对象类实现接口,但真实对象不能是final 类),以下Demo 实现在特定方法前后添加日志和事务的的功能。1)Proxy 类 (真...

2018-04-24 19:41:05 3320 1

原创 从IO 到框架(5)-手写简单框架

手写简单框架,对上篇"从IO 到框架(4)-Servlet + JDBC (Idea Maven)" 的第一次迭代。1)控制层:核心思想:使用反射、泛型和注解技术设计通用(批量处理) 的工具类。反射机制是在运行状态中,对于任意一个类,都能够知道这个类的所有属性和方法;对于任意一个对象,都能够调用它的任意一个方法和属性,这种动态获取信息以及动态调用对象的方法的功能称为java语言的反射机制。一直以来...

2018-04-14 20:44:20 235

原创 Eclipse 项目基本操作

虽然用了Idea 之后就完全没有用Eclipse 的兴趣了,但只为以防万一,还是记录一下基本的Eclipse 操作。1)配置Tomcat:菜单Window - Preference - Server - Runtime Environment2)设置字体:菜单Window - Preference - General - Apprearance - Colors and Fonts - Basic...

2018-04-14 20:02:46 222

原创 从IO 到框架(6)-Struts2

第一个正式框架Struts2,对"从IO 到框架(4)-Servlet + JDBC (Idea Maven)" 的第二次迭代。0)三大块框架1)Struts2 官方流程图ActionMapper (ActionMapping) 负责识别当前的请求需不需要struts2 处理(过滤掉静态资源);Interceptors 有18个(在栈中),做表单数据封装等(代替request.getParamet...

2018-04-10 21:41:59 192

原创 tomcat-8.5.24 加含双引号的cookie 报错,tomcat-7.0.85 OK

商城购物车的一个方法(代码见最后一段),response 添加cookie 这行会报错:java.lang.IllegalArgumentException: An invalid character [34] was present in the Cookie value"34" 是ASCII 编码,表示一个双引号;JSON 是正确的格式;换了7.0.85 版本的tomcat 之后就可以正常运行...

2018-04-08 08:51:21 865

原创 从IO 到框架(4)-Servlet + JDBC (Idea Maven)

动态Web 应用的基础代码。关于IDE:最开始入门用Eclipse,但一用Idea 就立刻弃了Eclipse。Idea 相比来说更加智能,除了占内存多点以外,用Idea 体验超好,远超Eclipse。关于Maven:学Maven 之前做项目都需要导Jar 包,比较麻烦而且可能有包版本冲突。有Maven 之后就爽多了!回不去了!它不仅用几行代码配置代替了导包的步骤,还会自动地导入很可能会用到的关联包...

2018-04-01 11:31:07 710

原创 从IO 到框架(3)-静态Web

手写Web Server 和Browser,展示静态页面。1)自己写一个WebServer:  启动此WebServer 类(Web服务器核心代码)后,浏览器中输入http://localhost:9999,Server 会接收到浏览器发来的请求头,并返回页面数据,浏览器即可访问到index.html。  VS: 启动Tomcat 服务器(C:\Program Files\apache-tomca...

2018-03-25 21:25:47 157

原创 从IO 到框架(2)-TCP/IP

系列第2篇,TCP/IP - 设备内的数据传输。1)服务端:获取输入流和输出流;从客户端收到请求后,再新建一个输入流得到数据,再通过输出流返回数据给客户端。import java.io.FileInputStream;import java.io.IOException;import java.io.InputStream;import java.io.OutputStream;impor...

2018-03-25 20:11:45 126

原创 从IO 到框架(1)-IO流

学习Java Web 编程的历程,就像生物的演化,一步步从30亿年前的单细胞到今天的各种高级生物。此系列文章尝试梳理这一历程。本篇为第一篇,IO流 - 设备内的数据传输。1)代码:从硬盘上读入index.html, 打印在控制台并输出到硬盘另一位置。import org.junit.Test;import java.io.*;public class Client { @T...

2018-03-25 17:53:17 137

原创 www.itrocks.com 建站记录

After hours of work on December 3, 2017, my blog is finally online! Quite excited!I will be recording my progress here, and enjoying sharing my learning with everyone.Human knowledge belongs to the wh...

2018-03-18 11:02:52 196

原创 在Idea 内搜索添加Maven 依赖

1)下载到过本地repository 的依赖,可在Setting 内更新本地索引,如下图,这样就可以在pom.xml,用alt+insert 来搜索添加本地的dependency,或者手动写也有提示。如果没找到的话就Update 一下local 索引。2)远程目录下载很慢,硬等着下载好了。然后应该就可以直接在pom.xml 搜索所有的依赖了,不用上mvnrepository.com 查了。下载了的...

2018-03-17 16:58:27 10995

原创 解决Idea Maven 项目的源值1.5问题

Idea 编译Web 项目时会报错“IntelliJ IDEA 源值1.5已过时,将在未来所有版本中删除”,原因是IDEA默认把项目的源代码版本设置为jdk1.5。通过修改相关设置可以解决,但还是比较麻烦的。用Maven 就简单了,在<plugins> 里添加如下插件代码即可。注意不是在依赖里添加这段代码!(会导进一大堆插件包,而且好象还不能解决问题) 这个办法是在发现java 文件不...

2018-03-17 09:36:40 1117 1

原创 Idea 重命名或复制一个项目(不用重启)

Idea 内无法直接修改Explorer 里文件夹的名称,只能手动改文件夹的名称。目前找到的最好的方法:1)重命名一个项目在Idea 项目关闭状态下,在 Explorer (Windows) / Finder (OSX) 里重命名文件夹,并删除.idea 文件夹下的 workspace.xml (此文件不删的话有些项目配置会有问题)。Idea 菜单 File - Open... 打开重命名后的项目...

2018-03-16 21:30:10 23559 1

原创 Idea 自定义快捷键 创建对象

Idea 自定义快捷键 创建对象,以下参考Stackoverflow 的答案:Settings - LiveTemplates - Add,然后如下图。Template text: $Clazz$ $obj$ = new $Clazz$($args$);$END$同理,可添加if 语句快捷键,Template text: if($args$){ $END$}...

2018-03-12 20:14:57 8858 1

原创 Idea SpringMVC的坑“ClassNotFoundException: org.springframework.web.servlet.Dispatcher”

新着手一个Idea 的SpringMVC 项目,做好后启动首页OK,但就是不能通过Controller 跳转页面。浏览器上报404错误:"The origin server did not find a current representation for the target resource or is not willing to disclose that one exists."Serv...

2018-03-12 18:44:09 1695 2

原创 用Idea 创建一个简单Maven-SSH 项目的流程(待完成)

本文记录梳理用Idea 创建一个简单Maven-SSH 框架项目的流程。0)框架功能梳理:Maven: 项目对象模型(POM) 通过一小段描述信息来管理JAR文件的工具。Spring (低耦合 高内聚): IoC, 对成员变量的赋值的控制权从代码中反转到配置文件中;依赖注入,核心是一个利用反射的方式加载配置文件(app.xml)、创建对象(bean) 的工厂模式(默认单例),用接口原理降低了耦合度...

2018-03-06 08:21:22 2340

原创 解决Idea 创建Maven 项目卡住的问题

如题目所述,有很多解决这个问题的文章,但可能有点问题,这里再总结一下。Idea 界面在 Generating project in Batch mode 卡住的原因是:网络不好的话,下载archetype-catalog.xml 太慢(地址:http://repo.maven.apache.org/maven2/archetype-catalog.xml)。解决办法:1)可先下载好ar...

2018-03-01 08:36:33 19178

原创 用Idea 开发一个简单的Struts2+Maven+Hibernate 项目的流程

本文整理了用Idea Intellij 开发一个综合运用Strut 2, Maven 和Hibernate 项目的流程,并在步骤中对比了此项目技术相对于Servlet、手动添加Jar 和JDBC 的优势,还记录了一些可能出现问题的坑,最后总结项目收到请求后的执行过程。源码地址 (CSDN 下载需要积分,欢迎支持):http://download.csdn.net/download/rock154/...

2018-02-27 15:24:26 1154

原创 Java 相关术语起源汇总

本文汇总了Java 相关的术语(acronym etc.) 起源或解释,用于帮助理解和掌握相关技术。大体上是按学习顺序整理的,目前仍在学习中。欢迎指正或补充!Java: Java是印度尼西亚爪哇岛的英文名称,因盛产咖啡而闻名。国外的许多咖啡店用Java来命名或宣传,以彰显其咖啡的品质。Java语言中的许多库类名称,多与咖啡有关,如JavaBeans(咖啡豆)、NetBeans(网络豆)以及Obje...

2018-02-26 20:39:10 197

Ziroom - Strut 2+Maven+Hibernate 项目源码

用Idea Intellij 开发的一个综合运用Strut 2, Maven 和Hibernate 项目的源码

2018-02-27

空空如也

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

TA关注的人

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