tgxblue

Java字符串,日期的格式化

JSP中常用的格式化包括:
1. 字符串的格式化
2. 字符串和HTML显示内容的格式化
3. 日期的格式化

一、字符串的格式化
字符串处理是项目中使用最频繁的,Java中提供了二种格式化字符串的方法,JDBC还提供了一种问号参数类似于格式化SQL语句。

1. 使用String.format()方法格式化字符串
   语法格式为:public static String format(String format, Object... args)
   其中字符串中的占位符(与C语言相同)为:%d -- 整数 %f --小数 %s -- 字符串
    格式化时按占位符的顺序使用变量的值替换。如有重复值,需要写两个%d,赋值两个
    例如:
        String str = "select top %d * from tb_user";
        str = String.format(str, 10);
2. 使用MessageFormat格式化字符串。
     类MessageFormat来自java.text包
     占位符:{0}、{1} 或者 {1[, 格式类型[,格式样式]]}
     格式类型有:number, date, time, choice
     格式样式详情请参见:JDK帮助。

     例如:
     int planet = 7;
     String event = " disturbance ";

    String result = MessageFormat.format(
     "At {1,time} on {1,date}, there was {2} on planet {0,number,integer}.",
     planet, new Date(), event);

    输出为:
        At 12:30 PM on Jul 3, 2053, there was disturbance on planet 7.

3. SQL语句的问号参数
    使用?为占位符,顺序从1开始。
    在创建PreparedStatement对象执行SQL语句前,为所有的问号设置参数值。
    语句为:
    private void bindParameter(Object... params){
         if(params != null){//此处使用可变参数,如果没有参数,则为null,否则为参数数组,类型为Object
               int i = 1;  //参数序号从1开始
               for(Object o : params){
                      if(o == null){
                          pre.setNull(i,Types.VARCHAR);  //设置数据库的字段值为NULL
                      }else if(o instanceof java.util.Date){ //o如果为java.util.Date的对象,返回true
                          java.util.Date dd = (java.util.Date)o;           
                          java.sql.Date sd = new java.sql.Date(dd.getTime());
                          pre.setDate(i, sd);
                    }else{
                          pre.setObject(i, o);
     

分类:

技术点:

相关文章: