`
文章列表
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 ...
Global site tag (gtag.js) - Google Analytics