java
文章平均质量分 87
基础语法、面向对象、集合框架、IO流、网络编程、单元测试、日志、反射等
勤思而敏学
金融+科技
Think-持续重构知识体系框架
展开
-
Java——防止SQL注入的几种策略
SQL注入(SQL Injection)是一种常见的网络安全漏洞,它允许攻击者通过操纵应用程序的输入来执行恶意的SQL查询。这种漏洞发生在应用程序没有正确验证、过滤或转义用户提供的输入数据时。攻击者可以利用这个漏洞来执行未经授权的数据库操作,例如删除数据、修改数据或者获取敏感信息。以下是SQL注入的一些关键特点和示例:用户输入未经验证:SQL注入通常发生在应用程序未正确验证或过滤用户提供的输入数据的情况下。用户输入可以包括表单字段、URL参数、Cookie等。原创 2024-02-23 09:38:06 · 883 阅读 · 0 评论 -
利用反射机制查看ArrayList类的信息
public class OutString {public static void main(String[] args) throws ClassNotFoundException {Class clazz = Class.forName("java.util.ArrayList");//获取ArrayList的类对象System.out.println("累的标准名称为:原创 2014-11-20 21:41:56 · 1161 阅读 · 0 评论 -
java FileOutputStream和FileInputStream简单案例
public class FileTest {public static void main(String[] args) {File file = new File("D:/mywork","work.txt");try {FileOutputStream out = new FileOutputStream(file);byte [] buy = "我要上春晚 蒙原创 2014-11-22 11:49:30 · 453 阅读 · 0 评论 -
java反射实现动态扩建数组
public static Object getCopy(Object sArr){ Class c1 = sArr.getClass(); if(!c1.isArray()){ return null; } Class componentType = c1.getComponentType();原创 2013-01-31 16:56:49 · 371 阅读 · 0 评论 -
java参数传递
java语言总是采用值传递的方式,也就是说,方法得到的是所有参数的一个副本,所以方法不能改变传递给它的任何参数的内容。改变的只是副本的值,1.基本类型。public static void raise(double x){ //试图让工资提升三倍 x=3*x;}double percent =10;harry.raise(percent );以上的代码原创 2013-01-29 15:01:40 · 294 阅读 · 0 评论 -
java对象与类案例
public class TestClass {int i = 47;public void call(){for (i = 0; i System.out.println(i);if(i==2){System.out.println("\n");}}}public TestClass() {}public static void main(Stri原创 2014-11-19 23:15:16 · 434 阅读 · 0 评论 -
java反射机制动态调用类中方法
public class MethodTest {public static void main(String[] args) {try {System.out.println("调用math类的静态方cos()");Method cos = Math.class.getDeclaredMethod("cos", Double.TYPE);Double cos1 = (原创 2014-11-20 22:00:25 · 570 阅读 · 0 评论 -
根据输入时间获取下一年,下一月,下一日。。。
/** * 根据输入时间获取下一秒/下一分/下一时。。。 * @param CreaterTimeStart * @return * @throws ParseException */ public String getNextSecond(String CreaterTimeStart) throws ParseExcepti原创 2013-02-23 17:16:06 · 694 阅读 · 0 评论 -
深入研究Servlet线程安全性问题
摘 要:介绍了Servlet多线程机制,通过一个实例并结合Java 的内存模型说明引起Servlet线程不安全的原因,给出了保证Servlet线程安全的三种解决方案,并说明三种方案在实际开发中的取舍。 关键字:Servlet 线程安全 同步 Java内存模型 实例变量 Servlet/JSP技术和ASP、PHP等相比,由于其多线程运行而具有很高的执行效率。由于Servlet/转载 2014-12-11 17:08:33 · 396 阅读 · 0 评论 -
【修改jar】jclasslib修改jar包里面的class文件
出于某些原因需要把别人jar包里面的class修改一下信息配置文件*.properties MANIFEST.MF 这些东西可以直接用记事本打开修改 然后替换掉就OK..在网上游荡了半天,没有找到合适的方法开始我是先用jd-gui反编译 把我需要修改的那个A.class文件反编译出来把代码保存到A.Java然后直接在dos里面用javac A.jav转载 2016-10-19 17:18:18 · 2370 阅读 · 0 评论 -
字符串加密机密
package order;public class String{public static void main(String[] args) {String value = "我爱java啊";char secret = '编';String Enc = NineTable.EAndU(value, secret);System.out.printl原创 2014-11-19 18:20:15 · 497 阅读 · 0 评论 -
java中equals和==的区别
java中equals和==的区别 值类型是存储在内存中的堆栈(简称栈),而引用类型的变量在栈中仅仅是存储引用类型变量的地址,而其本身则存储在堆中。 ==操作比较的是两个变量的值是否相等,对于引用型变量表示的是两个变量在堆中存储的地址是否相同,即栈中的内容是否相同。 equals操作表示的两个变量是否是对同一个对象的引用,即堆中的内容是否相同。 ==比较的是2个对象的地址,而equ转载 2014-11-15 12:21:29 · 445 阅读 · 0 评论 -
SPRING中的线程池ThreadPoolTaskExecutor
一、初始化1,直接调用[java] view plain copy print?ThreadPoolTaskExecutor poolTaskExecutor = new ThreadPoolTaskExecutor(); //线程池所使用的缓冲队列 poolTaskExecutor.setQueueCapacity(20转载 2016-07-12 13:58:37 · 12795 阅读 · 0 评论 -
java基础知识范例
public class Test {static boolean b;public static void main(String[] args) {int n = 'd';//char类型的d对应的unicode编码赋值给nchar h = 97;//将Unicode值为97的字符赋值给hchar ch1 = '\\';char ch2 = '\u2345';boo原创 2014-11-19 14:04:31 · 375 阅读 · 0 评论 -
JSP元素
1.scriptlet : ,百分号之间添加java代码块2.指令: 主要用于导入所需要的java文件,比如 3.表达式:表达式内容写在=后边,需要有返回值,不需要";" ,因为表达式是以参数的形式传递out.print() 会转换为4.申明: JSP声明用于申明所生成的servlet类的成员,所以可以申明方法和变量,即所有申明都会添加到类中因此以下的代码,不能统计页面访问量原创 2014-12-26 13:17:12 · 428 阅读 · 0 评论 -
如何把安全证书导入到java中的cacerts证书库
在项目开发中,有时会遇到与SSL安全证书导入打交道的,如何把证书导入java中的cacerts证书库呢?其实很简单,方法如下:每一步:进入某个https://www.xxx.com开头的网站,把要导入的证书下载过来, 在该网页上右键 >> 属性>> 点击"证书">> 再点击上面的"详细信息"切换栏 >> 再点击右下角那个"复制到文件"的按钮转载 2015-10-20 15:16:41 · 820 阅读 · 0 评论 -
servlet监听器
Listener是Servlet的监听器,它可以监听客户端的请求、服务端的操作等。通过监听器,可以自动激发一些操作,比如监听在线的用户的数量。当 增加一个HttpSession时,就激发sessionCreated(HttpSessionEvent se)方法,这样就可以给在线人数加1。常用的监听接口有以下几个: ServletContextAttributeListener监听对S转载 2014-12-25 12:36:48 · 354 阅读 · 0 评论 -
Farward和redirect的区别
1.本质上来说,farward数服务器行为,原创 2014-11-07 19:18:39 · 656 阅读 · 0 评论 -
通过反射机制动态设置类的私有域
public class Employee implements Comparable {private int id;private String name;private int age;public Employee() {}public Employee(int id,String name,int age) {this.id = id;this.name原创 2014-11-20 14:46:30 · 704 阅读 · 0 评论 -
main方法中编写匿名内部类实现空字符串的去除
//定义接口和对应的字符串处理方法public interface StringDeal {public String filterString();}原创 2014-11-20 18:20:30 · 647 阅读 · 0 评论 -
Abstract Class 和interface的区别
本质上来说,抽象类属于类,接口属于接口,抽象类原创 2014-11-07 19:01:44 · 415 阅读 · 0 评论 -
java23种设计模式之一——工厂模式
1.工厂模式工厂模式转载 2014-11-15 23:46:55 · 545 阅读 · 0 评论 -
java中Keytool的使用总结
以前用过几次这个东东,但每次都重新查询一次。本文原始出处是这里。-----------------------------------------------------------Keytool是一个Java数据证书的管理工具,Keytool将密钥(key)和证书(certificates)存在一个称为keystore的文件中在keystore里,包含两种数据:密钥实体(Key en转载 2015-10-20 13:14:52 · 539 阅读 · 0 评论 -
servlet的工作流程
1.web客户向servlet发送http请求2.原创 2014-11-16 22:55:38 · 1008 阅读 · 0 评论 -
EJB到底是什么,
1. 我们不禁要问,什么是"服务集群"?什么是"企业级开发"? 既然说了EJB 是为了"服务集群"和"企业级开发",那么,总得说说什么是所谓的"服务集群"和"企业级开发"吧!这个问题其实挺关键的,因为J2EE 中并没有说明白,也没有具体的指标或者事例告诉广大程序员什么时候用EJB 什么时候不用。于是大家都产生一些联想,认为EJB"分布式运算"指得是"负载均衡"提高系统的运行效率转载 2015-01-04 13:56:23 · 576 阅读 · 0 评论 -
JAVA多线程实现的三种方式
JAVA多线程实现方式主要有三种:继承Thread类、实现Runnable接口、使用ExecutorService、Callable、Future实现有返回结果的多线程。其中前两种方式线程执行完后都没有返回值,只有最后一种是带返回值的。1、继承Thread类实现多线程继承Thread类的方法尽管被我列为一种多线程实现方式,但Thread本质上也是实现了Runnable接口的转载 2016-07-13 17:09:53 · 317 阅读 · 0 评论 -
struts的工作流程
web应用启动时加载actionServlet,ActionServlet原创 2014-11-16 22:22:07 · 410 阅读 · 0 评论 -
java23设计模式之——抽象工厂模式(Abstract Factory)
工厂方法模式有一个问题就是,类的创建依赖于工厂类,拓展程序的话,必须xiu转载 2014-11-16 00:13:24 · 483 阅读 · 0 评论 -
简单例子用于查看线程的状态
线程简单的测试例子,用于了解线程的public class ThreadState implements Runnable {public synchronized void waitForASecond() throws InterruptedException{wait(500);System.out.println("我在等待5毫秒");}public synch转载 2014-11-24 11:41:57 · 509 阅读 · 0 评论 -
String和StringBuffer的区别
String和StrngBuffer都可以用来对字符串进行存储和修改原创 2014-11-07 18:32:08 · 428 阅读 · 0 评论 -
Get和Post的区别
1.get方法通过url请求来传递参数,字段名称和内容成对出现,例如:原创 2014-11-07 19:11:12 · 389 阅读 · 0 评论 -
java——继承设计的技巧
1.将公共操作和域放在超类。将name,age等属性放在person'而不是stydent中,更符合继承的意义。2.不要使用受保护的域protected第一:子类是无限制的,任何人都可以编写子类继承类,然后访问其中的protected实例域,破坏封装。第二:在java中,同一个包中的任何类都可以访问受保护类3.除非继承的所有方法都有意义,否则不用继承。这样继承会得到用不到的转载 2013-02-25 15:57:14 · 416 阅读 · 0 评论 -
JDK源码分析之String篇
前提:先了解下什么是声明,什么时候才算是产生了对象实例其中x并未看到内存分配,变量在使用前必须先声明,再赋值,然后才可以使用。java基础数据类型会用对应的默认值进行初始化一、首先看看Java虚拟机JVM的内存块及其变量、对象内存空间是怎么存储分配的1、栈: 存放基本数据类型及对象变量的引用,对象本身不存放于栈中而是存放于堆中1)、基础类型 byte转载 2016-06-22 15:54:00 · 342 阅读 · 0 评论