- 博客(15)
- 收藏
- 关注
原创 jdbc增加日期的注意点
在java程序中一般日期用到的是java.util.Date类而接口 PreparedStatementsetDatevoid setDate(int parameterIndex, Date x) throws SQLException使用运行应用程序的虚拟机的默认时区将指定参数设置为给定 java.sql.Date
2012-05-31 10:39:50 2544
原创 利用PreparedStatement 结果注入问题
//Statement st = conn.createStatement();//PreparedStatement ps = conn.prepareStatement(sql);上面两句话的区别在于 PreparedStatement 在创建的时候需要传入 sql语句,而 Statement的时候才需要传入sql语句 (ResultSet rs = st.executeQuery();
2012-05-30 22:21:10 1749
原创 利用拼接字符串可能导致SQL注入问题
package info.dyndns.oszc.Introduce;import java.sql.Connection;import java.sql.ResultSet;import java.sql.Statement;public class SQLInject { public static void read(String name) throws Exception
2012-05-30 22:04:50 6942
原创 数据库 CRUD操作
查询执行ResultSet rs = st.executeQuery(sql);曾 删 改 都执行 st.executeUpdate(sql);注意链接数据库要制定字符集,否则会出现中文乱码问题。最后关闭连接,避免资源浪费。package info.dyndns.oszc.Introduce;import java.sql.*;public class JdbcUtils
2012-05-30 21:44:06 3131
原创 JDBC 基础改进型 代码
package info.dyndns.oszc.Introduce;import java.sql.*;public class BasePlus { public static void main(String[] args) throws Exception { template(); } public static void template() throws Exce
2012-05-30 15:18:32 702
原创 JDBC 基础
package info.dyndns.oszc.Introduce;import java.sql.*;public class Base { public static void main(String[] args) throws Exception { new Base().test(); } public void test() throws Exception {
2012-05-30 13:31:26 372
原创 JAVA 注解
自带注解:1、@SupressWarning("deprecation") 取消提示方法过时2、 @Deprecated 提示方法过时3、@Override 覆写方法自定义注解:package com.Annotitation;import java.lang.annotation.*;import javax.lang.model.element.E
2012-05-26 19:59:07 612
原创 静态导入
静态方法的一般写法为:静态类名.方法,现在jdk1.5提供了一个更加简便的方法静态导入,连类名都可以省略,直接使用方法名。使用方法:1、导入单一方法,使用数学类Math举例import static java.lang.Math.abs;说明:需要在import后面加static修饰,静态导入必须限定到类名之后的方法名。(一般导入只需导入类即可)2、导入某个类的全部静态方法
2012-05-25 19:26:32 902
原创 工厂模式
工厂模式的一大优点就是只需改变实例的对象,而不改变方法就能实现方法中内容的改变,更改软件皮肤是一个很好的例子。下面就是一个工厂模式的uml图:package test;public class Apple extends Food{ public void getFood(){ System.out.println("A big red apple
2012-05-22 20:31:55 500
原创 Java内省操作
内省操作主要针对Javabean来的,简化了一系列反射的步骤;比如反射一个方法需要首先获得字节码 class.forName();然后利用Constructor实例化,在获得method,然后在invoke这个方法;而内省则只要一下几部即可:或则PropertyDescriptor 其参数为(propertyName,obj.class) 第一个参数是bean的名称,命名规则如下:
2012-05-18 21:49:43 1024
原创 反射
反射让程序在运行时能够加载类,对于框架是一项非常实用的技术,而且为了学习框架必须了解其中的一些原理。一、对构造函数的反射,得到构造函数,然后可以创建一个该类的实例。改构造函数可以是无参和有参的,下文都有举例。二、对方法的反射,知道某一个方法名,可以很方便的利用反射技术来调用该方法,其意义在于即使不知道方法名,我们可以在配置文件中进行声明,而相当于已知。对于一个陌生的类,我们可以先通过C
2012-05-08 19:34:49 499
原创 枚举
枚举类型是由一个固定长度常数组成的域的集合,比如方向(东、南、西、北)和星期。因为他们是常量,所以枚举类型命名的时候通常用大写。在JAVA中,使用enum关键字来定义枚举,比如,星期可以如下这样定义:public enum Day { SUNDAY, MONDAY, TUESDAY, WEDNESDAY, THURSDAY, FRIDAY, SATURDAY }
2012-05-07 12:33:53 455
原创 利用TCP 实现通过网络复制文件夹中所有文件!
服务器端:package info.dyndns.oszc.TcpServer;import java.net.*;import java.io.*;public class TcpServer implements Runnable { Socket s; public TcpServer(Socket val){ s = val; } public
2012-05-06 20:57:56 873
原创 JAVA 使用网络传输文件 并且使用原来的文件名称(服务端改进版)
服务器端package info.dyndns.oszc.Server;import java.io.*;import java.net.*;public class Server implements Runnable{ Socket socket; String filePath; public Server(Socket sVal, String fileP
2012-05-05 16:39:55 1670
原创 多线程案例:生产者与消费者
package info.dyndns.oszc.product;import java.util.concurrent.locks.Condition;import java.util.concurrent.locks.Lock;import java.util.concurrent.locks.ReentrantLock;/** * 这是一个模拟生产者和消费者的案例,使用多线程操
2012-05-04 13:13:51 1896
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人