新人工作半个月,闲下来整理下一些在工作中遇到的别人看来很简单的知识点

 

  本科四年软件工程专业。自学java两年,目前大三下,暑假来深圳找工作,没工作经验,只能在网上海投,专注在中国人才网一共海投投了7500份简历,找工作15天整,断断续续面试了15家公司,各种奇葩的面试(立马在电脑上写模块代码,做奥数题,各种笔试······),各种一面二面三面,7家offer,可是都以大三没毕业证不能签正式的劳动合同为由把工资压的极低。。。(有幸的是能够遇到目前这家很不错的公司,直接进了项目组,对于一个刚刚大三还未大四的菜鸟是很好的锻炼和考验机会。)

  今天是参加工作的第五个星期一。将这段时间工作中的一些老鸟不屑的知识点记录下。

  

  第一个任务就是项目的第三方授权管理(网页授权获取用户基本信息)。第二个新建一个模块功能。  

  //如何获得系统日期,并把其转化为 String

import java.util.Date;

import java.text.*;

public class StrDate{

public static void main(String[] args){

Date d = new Date();

//String str = d.toString();

SimpleDateFormat sdf=new SimpleDateFormat("yyyy-MM-dd  kk:mm:ss ");

//其中yyyy-MM-dd是你要表示的格式

//可以任意组合,不限个数和次序;具体表示为:MM-month,dd-day,yyyy-year;kk-hour,mm-minute,ss-second;

String str=sdf.format(d);

System.out.println("The date is : " str); } }

DateTime dt = DateTime.Now;  

dt.ToLocalTime().ToString();//2005-11-5 21:21:25

dt.ToUniversalTime().ToString();//2005-11-5 5:21:25

 

/**   以时间戳产生随机数,一共13位 8yymmddd 5随机数   */

 public long getID() {

  SimpleDateFormat sdf = new SimpleDateFormat("yyyyMMdd");  

 String y = sdf.format(new java.util.Date());

  int n = 0;

  while (true) {

   n = (int) (Math.random() * 10000000);   

 if (n >= 10000 && n < 100000) {

    break;  

  }   }

  return Long.parseLong(y + n);

 }

 

数据库字段小于当前时间

SELECT * FROM Microcampus_T_Activity WHERE cityid = '0'; SELECT * FROM `Microcampus_T_City` WHERE id ='1'; SELECT * FROM `Microcampus_T_Activity` WHERE datetiff(NOW(), `endtime`)>0;

SELECT * FROM `Microcampus_T_Activity` WHERE DATEDIFF(`endtime`, NOW())<0;

SELECT * FROM Microcampus_T_Activity WHERE DATEDIFF(ms,jieshushijian, getdate()) > 0"

select * from Microcampus_T_Activity  where endtime > NOW();

 

//下面就是实现为数据库获取一个唯一的主键id的代码生成32位UUID去掉—
public class UUIDGenerator {
    public UUIDGenerator() {
    }
    /**
     * 获得一个UUID
     * @return String UUID
     */
    public static String getUUID(){
        String s = UUID.randomUUID().toString();
        //去掉“-”符号
        return s.substring(0,8)+s.substring(9,13)+s.substring(14,18)+s.substring(19,23)+s.substring(24);
    }
int转换为16进制
Integer.toHexString(number)

 

//页面无跳转实现 JSP ---Action -----JSP   对象直接访问下面的网址(而不是让浏览器跳转到)

JSP如何解析 Action 返回的 JSON数据

 

 

 需求文档中还需要用到 Memcached 临时找了几篇博客看看(很谢谢这个简单明了的介绍http://www.360doc.com/content/11/0503/23/63912_114183956.shtml

  Memcached是高性能的,分布式的内存对象缓存系统,用于在动态应用中减少数据库负载,提升访问速度。Memcached由Danga Interactive开发,用于提升LiveJournal.com访问速度的。LJ每秒动态页面访问量几千次,用户700万。Memcached将数据库负载大幅度降低,更好的分配资源,更快速访问。

 

 // memcache初始化  

static {

  String[] servers = { "127.0.0.1:11211" };   

Integer[] weights = { 3, 3, 2 };

  sUpool = SockIOPool.getInstance();  

 sUpool.setServers(servers);

  sUpool.setWeights(weights);   

sUpool.setMaintSleep(30);   

sUpool.setNagle(false);

  sUpool.setSocketTO(3000);

  sUpool.setSocketConnectTO(0);

  sUpool.initialize();

 }

调用:: 

protected static MemCachedClient mcc = new MemCachedClient()

  // 以APPID+当前用户ID为Value存储到memcache中。过期时间设为2分钟。
       String key = getRandom(); // code
       String value = app.getAppId() + User.getId();
       mcc.set(key, value, new Date(
         new Date().getTime() + 60000 * 2));

 

CSS:

    overflow: hidden;
      text-overflow: ellipsis;
      white-space: nowrap;

实现文字过长,自动加...;不换行。

 

.LocalCityBar {  width: 100%;  height: 39px;  position: fixed;  top: 0px;  display: none;  background: #F5F5F5;  border-bottom: 1px solid #b5b4b5;  padding-right:4px;   }

.LocalCityBar a {  display: block;  width: 33.33%;  height: 36px;  text-align: center;  line-height: 40px;  float: left;  padding-bottom: 2px;  cursor: pointer;  color: #646464;  cursor: pointer;  overflow: hidden;     text-overflow: ellipsis;     white-space: nowrap;    }

.LocalCityBar a span{  padding:13px;  background-image: url(../images/arrow_down.png);  background-repeat: no-repeat;  background-position: right center;  background-size: 11px 5px; }

导航条效果图:

 

最让人头疼的是页面基本都是js生成,对于一个项目经验为0的菜鸟,面对800多M的项目代码,刚刚开始根本不知道从何下手,慢慢画图读源码,第一个星期一句代码都没写,过程很艰难,如今任务已经全部提交。

 

posted @ 2014-09-09 15:53  keep--moving  阅读(294)  评论(0编辑  收藏  举报