- 浏览: 80321 次
- 性别:
- 来自: 上海
最新评论
文章列表
import java.io.BufferedInputStream;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
import j ...
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date;
public class Main {
/**
* 得到两日期相差几个月
*
* @return
*/
public static long getMonth(String date1, String date2) {
SimpleDateFormat sdf = new SimpleDateFormat ...
<insert id="insert" parameterClass="Person"> insert into person(name,pswd) values(#{name},#{pswd})
<selectKey resultClass="java.lang.Integer" keyProperty="id" >
SELECT @@IDENTITY
</selectKey>
</insert>
在Mybatis Mapper文件中添加属性“useGeneratedKeys”和“keyProperty”,其中keyProperty是Java对象的属性名,而不是表格的字段名。
方法1:
<insert id="insert" parameterType="Person" useGeneratedKeys="true" keyProperty="id"> insert into person(name,pwd) values(#{name},#{pwd}) < ...
import java.lang.reflect.Array;
import java.util.Arrays;
/**
* 数组变长算法! 数组对象长度不可改变,但是很多实际应用需要长度可变的数组,可以采用复制为容量更大的新数组, 替换原数组, 实现变长操作
*/
public class ArrayExpand {
/**
* 计算一个字符在字符串中的所有位置
*
* @param str
* @param key
* @return
*/
public static int[] count(String str, ch ...
ApplicationException
/**
* Wallstreet异常
*
* @author liuxl
*
*/
public class ApplicationException extends RuntimeException {
/**
*
*/
private static final long serialVersionUID = 1L;
/**
* 错误代码
*/
private String code;
public ApplicationException() {
super() ...
TCP与UDP的区别
- 博客分类:
- Java
小结TCP与UDP的区别:
1.基于连接与无连接;
2.对系统资源的要求(TCP较多,UDP少);
3.UDP程序结构较简单;
4.流模式与数据报模式 ;
5.TCP保证数据正确性,UDP可能丢包,TCP保证数据顺序,UDP不保证。
html中post和get区别
1. get是从服务器上获取数据,post是向服务器传送数据。
2. get是把参数数据队列加到提交表单的ACTION属性所指的URL中,值和表单内各个字段一一对应,在URL中可以看到。post是通过HTTP post机制,将表单内各个字段与其内容放置在HTML HEADER内一起传送到ACTION属性所指的URL地址。用户看不到这个过程。
3. 对于get方式,服务器端用Request.QueryString获取变量的值,对于post方式,服务器端用Request.Form获取提交的数据。
4. get传送的数据量较小,不能大于2KB。post传送的 ...
在网络编程中,我们经常会遇到阻塞、非阻塞、同步、异步这两组概念,许多人很容易混淆,现在就给大伙儿说说我对着两组概念的理解。
先说说阻塞与非阻塞,这主要和程序等待消息时的状态有关
1、阻塞
程序会阻塞在某一个函数,而不往下执行,就如挂在那里一样,所有的其他业务也都不执行,为一直等到消息到来才往下执行。
2、非阻塞
程序不会阻塞在某一个函数,不等待消息到来,立即返回,往下执行。
举个例子,
BeanUtils和PropertyUtils类是许多开源框架中频繁使用的两个工具,它们都能实现将一个类中的属性拷贝到另一个类中,这个功能甚至是spring实现依赖注入的基础。研究一下apache的comon包中如何实现这个两个工具,可以发现它们都是使用java.lang.reflect和java.beans这两个包下的几个类来实现的。
但是BeanUtils.copyProperties只支持两个对象之间的复制,其原理:是利用反射读取到第一个对象(源类)的所有属性,然后对这些属性集合进行for循环,再在for循环里面判断这些属性是否有set方法,有则再对第二个对象(目标类)进行循环 ...
/**
* 二进制流拷贝文件
*
* @return
*/
public static boolean copy()
{
try
{
OutputStream os = new FileOutputStream("C://testCopy.rar");
InputStream fis = new FileInputStream("C://test.rar");
b ...
Spring配置文件中关于事务配置总是由三个组成部分,分别是DataSource、TransactionManager和代理机制这三部分,无论哪种配置方式,一般变化的只是代理机制这部分。
DataSource、TransactionManager这两部分只是会根据数据访问方式有所变化,比如使用Hibernate进行数据访问时,DataSource实际为SessionFactory,TransactionManager的实现为HibernateTransactionManager。
五种Spring事务的配置方式
<?xml version="1.0& ...
/**
* 获取两个List的不同元素
*
* @param list1
* @param list2
* @return
*/
private static List<String> getDiffrent4(List<String> list1, List<String> list2)
{
long st = System.nanoTime();
Map<String, Integer> map ...
1、java.text.DecimalFormat df=new java.text.DecimalFormat("0.00"); //格式化,保留两位小数
BigDecimal bigNum = new BigDecimal(2.656);
System.out.println(df.format(bigNum));
2、System.out.println(String.format("%.2f", bigNum));
/**
* 首字母大写
* @param str String 要修改的字符串
* @return String 首字母大写的字符串
*/
public String capUpper(String str)
{
if (str == null || "".equals(str))
return "";
if (str.length() == 1)
return str.toUpperCase();
String temp = str.substring(0, 1).toUpper ...