如何在新建一個文檔時就有默認的模板內容呢?
非常簡單的執行以下操作:
cd ~
mkdir -p .vim/skel
vim .vim/skel/Template.py
在Template.py里隨便寫一些內容,如:
#!/bin/python
#write by shelley
然后,正題來了:
打開.vimrc
vim ~/.vimrc
寫入:
autocmd BufNewFile *.py 0r ~/.vim/skel/Template.py
保存后用vim 新建一個.py文件試試吧:)
關于autocmd,可以參考以下鏈接了解:http://man.chinaunix.net/newsoft/vi/doc/autocmd.html
非常簡單的執行以下操作:
cd ~
mkdir -p .vim/skel
vim .vim/skel/Template.py
在Template.py里隨便寫一些內容,如:
#!/bin/python
#write by shelley
然后,正題來了:
打開.vimrc
vim ~/.vimrc
寫入:
autocmd BufNewFile *.py 0r ~/.vim/skel/Template.py
保存后用vim 新建一個.py文件試試吧:)
關于autocmd,可以參考以下鏈接了解:http://man.chinaunix.net/newsoft/vi/doc/autocmd.html
又是轉貼分享,哈哈哈
![]() 時間忽悠悠,一晃自己已經遠離應屆生2年了。 今天公司招聘程序員,收到了很多簡歷,篩選了一下,然后,約了大家面試。 面試完后,我想起了自己應屆生的求職時候的情景,當然,也想到了當時自己犯的錯誤,在這里給大家總結下,希望大家借鑒。 1、電話通知面試給人留下好印象。 有些同學,我通知他面試的時候,剛接電話的時候的語氣基本上我就會給他一個判斷,有人接電話很沒有精神,像是沒有睡醒;有甚至嘻哈嘻哈和我說話,旁邊似乎還比較吵……我覺得這個很重要,即使你在一個比較復雜的環境下,你也應該給面試方說明一下,然后自己找個安靜的地方回撥電話。 另外,在你求職期間,請時刻保持你的手機暢通,并保證你自己的手邊有個小本子和筆,這樣,你方便記錄下別人給你通知的面試時間和地點。不要總在那里說,你把公司名稱和地址給我發來一下。 要善于用“百度地圖”。很多公司人家會告訴你公司名稱和公司地址,至于怎么坐車,怎么來,有很多途徑的,希望同學們自己知道用百度地圖去搜索下路線怎么走,不要一開口就問,我怎么到那里去。 總之,要在電話中實現以下目的: A 你這個人比較有精神; B 你這個人很精明; C 你這個人不會給企業找麻煩,會自己解決問題。 2、面試的時候,請針對你的應聘職位進行著裝。 我們招程序員,招技術,有一個女生,穿的算是潮流類的吧,還提個小包包。不管怎么著 ,我一看這個人就不像是做技術的料,做技術的典型特征就是:休閑服裝,外加一個電腦包。 3、不要忽悠,不知道就坦誠點,企業要是不是什么都會的人。 哪個面試官是笨蛋,還給你忽悠的機會啊。很好玩的是,有人面試的時候,那么明顯的忽悠著:當時我在項目中是做什么什么的,我負責什么什么的……可我忘記了當時是怎么做的了……作為一個合格的技術,睡夢中都知道那個事件的代碼是怎么寫的吧。 4、時間觀念。 沒有時間觀念,你說要他2點到吧,他1點多點就來到辦公室^……那時候我還沒有準備開始呢。更牛的人:遲到,我簡直要瘋了。一般來說,你面試,提前5分鐘左右還好吧,不要太早,遲到,更是不允許的。當然如果有意外,請你在規定時間前30分鐘就應該通知對方。 5、多點準備工作。 找工作,很多人著急忙于投簡歷,但并沒有準備相關的面試工作。有時候,來了吧,基本的問題都沒有回答好,甚至連自我介紹都沒有準備。我想,大家起碼應該在宿舍和同學之間搞一下模擬招聘吧。不要來到公司,一開口就給人一種沒有準備的感覺,什么都像心里沒有底。 可以提前點到面試地點附近,自己轉悠下,剛好,緩解下緊張氣氛。 6、忌諱說:給我一個學習的機會。 “公司都不是慈善機構”這個是我當時面試的時候,一個長輩給我說的這句話,我一直都記著,在這里也送給大家。企業招人的話,是付出了很大的成本的,你告訴他你是來學習的,哪個老板有這么的好??!出錢給你來學習??所以,你可以說你的學習能力很強,但,絕對不是來學習的。 7、敢于說出你的期望。 我喜歡問大家的期望:期望找一個什么樣的工作,期望有一個什么樣的公司環境?很多同學說:沒有關系,我覺得什么樣的都可以!簡直是胡說!什么樣的都可以?一個月500,我看你怎么生存??你會不在乎自己的職業?會對公司沒有期望??因為公司只是想找和公司比較匹配的人,說出你的期望,這樣對公司和你自己都是比較好的。不要說你什么都不在乎,你以為你什么都不在乎,企業就要你了??拿個企業敢要?? 8、不要鄙視小公司。 在北京、上海等大城市,有很多都是創業的小公司。3、5人的,十幾人的,好的有幾十人的……我不知道大家找工作的時候,看重的是什么。但面試的時候,我發現了有很多人喜歡問:你們公司有多大?你們公司經營了幾年了?說實話,關心這樣的問題,沒有什么不對,但,你不應該一開始就問。每個公司在面試完你之后,會給你一個機會交流公司業務的,并且,你投簡歷之前,應該也對那個公司有一定的了解了。 但說句真話,國內的很多小公司都不錯,呵呵,起碼,國家的稅、國家的就業都應該感謝他們。小公司有小公司的好,他們會相對的更加自由、發展空間不會比小公司小,甚至會大很多,同時,小公司的人性化一般都不錯的。所以,給大家借鑒下,不要鄙視小公司,小公司能夠活下來的,都很不錯的。 9、要學會抓住機會、學會感恩。 我應屆生的時候,有位帥哥考官對我說過一個電影《當幸福來敲門》,建議大家有時間也看下。每個到你面前的面試機會都不是那么容易的,在中國,就業難,這個問題估計未來幾個世紀都改變不了的,哈哈。所以,有了機會,千萬要懂得珍惜,要學會抓住機會。 另外要學會感恩。對于招了你的公司,你更應該加倍的感激,不要一搞就跳啊跳啊跳,公司培養了你3個月,你干了4個月就閃人,這樣的人說真的,是比較可惡的,呵呵。對于沒有招你的人,你也應該感激人家,起碼人家認可了你的簡歷,還給了你一次面試的機會,從整個面試中你也應該可以學習到很多東西的。如果你沒有感激的感覺,那說明你不善于觀察,你自己沒有學習到,是你的問題了。 ……………… 先這么多,后續再加。 希望大家多多努力,找個滿意的工作。 學會感恩!
恩,謝謝
|
以下為自身琢磨出來如何使用這個組件
在Action中定義與表單同名的File類型就可以簡單獲得此上傳文件的引用,然后打開輸入輸出流將其復制到所要存放的地點即可。有幾個重要的get;set方法需要說明
private File file;//上傳的文件
private String fileName;//注意命名規范,或在set方法中修改,必須為上傳文件+name,為不帶路徑的文件名
private String fileContentType;//文件屬性
整了半個上午,在javascript中使用類似${module.getName()}這樣的EL表達式就會出現問題,后來查了半天,有人說在JAVASCRIPT中不能使用EL,或者有人說不規范,云云。后來在一位‘大俠’的言辭中找到答案,如下引用
之前經常看到有人說js是客房端的,EL是服務端的,不能在js中使用EL表達式----真是扯淡
要在javascript中使用El表達式,只需在el表達式兩端加上單引號或者雙引號即可
如:
<script>function(){
alert('${sessionScope.user.name}'); //獲取session中user對象的name屬性
}
</script>
也就是說只要使用$就要加單引號
順便附一下EL內置對象
類別 | 標識符 | 描述 |
JSP | pageContext |
PageContext 實例對應于當前頁面的處理 |
作用域 | pageScope |
與頁面作用域屬性的名稱和值相關聯的 Map 類 |
requestScope |
與請求作用域屬性的名稱和值相關聯的 Map 類 |
|
sessionScope |
與會話作用域屬性的名稱和值相關聯的 Map 類 |
|
applicationScope |
與應用程序作用域屬性的名稱和值相關聯的 Map 類 |
|
請求參數 | param |
按名稱存儲請求參數的主要值的 Map 類 |
paramValues |
將請求參數的所有值作為 String 數組存儲的 Map 類 |
|
請求頭 | header |
按名稱存儲請求頭主要值的 Map 類 |
headerValues |
將請求頭的所有值作為 String 數組存儲的 Map 類 |
|
Cookie | cookie |
按名稱存儲請求附帶的 cookie 的 Map 類 |
初始化參數 | initParam |
按名稱存儲 Web 應用程序上下文初始化參數的 Map 類 |
在實際開發中,多對多雙向表會盡量避免而無法完全避免,一旦遇到這個情況時hibernate的映射方法如下
舉個例子: 多對多雙向關聯 關系舉例:老師<-->學生,老師需要知道自己教了哪些學生,學生也知道自己有哪些老師. 數據庫:中間表 Annotation:@ManyToMany XML:<many-to-many> 多對多單向配置只需要在一端進行配置就可以了,雙向需要配置兩端. 關系模型(Teache多對多Student) Teacher(id,name,students)多 Set<Student> students=new HashSet<Student>() Student(id,name,teachers)多 Set<Teacher> teachers = new HashSet<Teacher>(); Annotation配置 在Teacher這一端的students上配置 //如果手動指定生成的中間表的表名和字段名 @ManyToMany @JoinTable(name="t_s", joinColumns={@JoinColumn(name="teacher_id")}, inverseJoinColumns={@JoinColumn(name="student_id")} ) 在Student一端的teachers只需要配置 @ManyToMany(mappedBy="students") XML配置方式:兩端配置一樣,注意表名和生成的中間表的字段屬性名要一致 Teacher那一端配置 <set name="students" table="t_s"> <key column="teacher_id"/> <many-to-many class="com.xxx.Student" column="student_id"/> </set> 在Student那一端配置 <set name="teachers" table="t_s"> <key column="student_id"></key> <many-to-many class="com.xxx.Teacher" column="teacher_id"/> </set> 生成的表為 create table Student ( id integer not null auto_increment, name varchar(255), primary key (id) ) create table Teacher ( id integer not null auto_increment, name varchar(255), primary key (id) ) create table t_s (//生成的中間表 teacher_id integer not null, student_id integer not null, primary key (teacher_id, student_id) ) t_s表的兩個屬性分別references其它表的主鍵. t_s(teacher_id, student_id)為中間表,ID策略為聯合主鍵### direct log messages to stdout ###
@orderby(value="id")
log4j.appender.stdout=org.apache.log4j.ConsoleAppender
log4j.appender.stdout.Target=System.out
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
log4j.appender.stdout.layout.ConversionPattern=%d{ABSOLUTE} %5p %c{1}:%L - %m%n
### direct messages to file hibernate.log ###
#log4j.appender.file=org.apache.log4j.FileAppender
#log4j.appender.file.File=hibernate.log
#log4j.appender.file.layout=org.apache.log4j.PatternLayout
#log4j.appender.file.layout.ConversionPattern=%d{ABSOLUTE} %5p %c{1}:%L - %m%n
### set log levels - for more verbose logging change 'info' to 'debug' ###
log4j.rootLogger=warn, stdout
#log4j.logger.org.hibernate=info
#log4j.logger.org.hibernate=debug
### log HQL query parser activity
#log4j.logger.org.hibernate.hql.ast.AST=debug
### log just the SQL
log4j.logger.org.hibernate.SQL=debug
### log JDBC bind parameters ###
#log4j.logger.org.hibernate.type=info
#log4j.logger.org.hibernate.type=debug
#log4j.logger.org.hibernate.type.descriptor.sql.BasicBinder=TRACE //顯示SQL語句綁定的參數
### log schema export/update ###
log4j.logger.org.hibernate.tool.hbm2ddl=debug
### log HQL parse trees
#log4j.logger.org.hibernate.hql=debug
### log cache activity ###
#log4j.logger.org.hibernate.cache=debug
### log transaction activity
#log4j.logger.org.hibernate.transaction=debug
### log JDBC resource acquisition
#log4j.logger.org.hibernate.jdbc=debug
### enable the following line if you want to track down connection ###
### leakages when using DriverManagerConnectionProvider ###
#log4j.logger.org.hibernate.connection.DriverManagerConnectionProvider=trace
Oracle的功能的確強大,但是如此一來面臨會遇到更多的問題,在插入數據的時候Mysql只需一個now()就能很好的插入當前時間,但是如果在oracle中使用sysdate,首先格式不對,會導致在hibernate取時間的值的時候報錯,stamptime格式不對,但在插入時又不能使用to_date函數,不知道是不是屬性字段設置不對,最后只能在初始化數據時候使用如下語句
insert into t_user values(12,'08051312','080513012','080513012',to_date('2011-4-18
24:00:00','yyyy-mm-dd hh24:mi:ss'));
終于整理好了,倒霉了2天,居然只是因為強行將設置為字符串的‘生日’轉化成timestamp,在一個沒有錯誤的地方磨蹭了很久都沒發現,唉!
測試初始化數據時 只要用sysdate就行了。在尋找這個不是錯誤的錯誤的時候學了很多函數,to_timestamp可以比to_date格式表示上多上毫秒級別
格式如yyyy-mm-dd hh:mi:ss.ff
還有,timestamp屬性列可以直接插入字符串時間 如insert into T_USER (ID, USERNAME, PASSWORD, C_NUM, CREATE_DATE) values (1, '08051301', '08051301', '08051301', '18-11月-11 12.00.00.990000 下午');
哎呀,不行 浪費太多時間了,趕緊繼續學習
在建立實體類后,使用@Entity(name="t_user")注解,則在HQL這個面向對象的查詢語句中,應該使用from t_user。
在與數據庫映射中的表名默認與類名相同,如果先建表的情況下要修改映射關系要使用注解@Table(name="t_user")。
因為攪渾了這兩個注解,查了一下午,調試都是not mapped,其他人都是沒有面向對象導致的錯誤,讓我好生難找。以后要細心點,不要想當然了
一直以來都是一個人悶聲學技術,感覺的確苦悶,周圍雖然有同學老師,但是卻技術殊圖,或不好意思勞煩他人。
于是就開始習慣于逛別人的博客,從中獲取不少知識和樂趣,樂趣可以遺忘,但是知識最好能保留,于是打算開辟一個博客用于記錄在學習中遇到的知識和筆記。
若有同道中人偶遇本人博客,千萬不要見笑,若能幫的上忙,本人自然與你一起快樂,若貽笑大方,請高人一笑了之。
Oracle以及其他數據庫在一般情況下表名都是不區分大小寫,但是在建表語句中如果加上雙引號(如create table "users"),則數據庫就會強制區分大小寫。
晚上在整合SSH和Oracle時,在建表后,使用hibernate映射時,hibernate居然又建立了表,所以上網查了一下,得出這個結果。其中還有一個收獲,在hibernate的annotation,generator可以設定sequence,如果缺省,hibernate會自己在Oracle中創建一個hibernate_sequence。同理可以自己設置sequence,然后使用注解關聯(記著要授權哦~)
Oracle drop table 后,并非真的刪除,其實存在一個回收表recyclebin。
可以select * from recyclebin;查看回收站里面的表,或者清空 purge recyclebin; 或者還原 flashback table 原表名 to before drop;
| |||||||||
日 | 一 | 二 | 三 | 四 | 五 | 六 | |||
---|---|---|---|---|---|---|---|---|---|
27 | 28 | 29 | 30 | 31 | 1 | 2 | |||
3 | 4 | 5 | 6 | 7 | 8 | 9 | |||
10 | 11 | 12 | 13 | 14 | 15 | 16 | |||
17 | 18 | 19 | 20 | 21 | 22 | 23 | |||
24 | 25 | 26 | 27 | 28 | 29 | 30 | |||
1 | 2 | 3 | 4 | 5 | 6 | 7 |
常用鏈接
留言簿
隨筆檔案
搜索
最新評論

- 1.?re: 在javascript使用EL表達式注意事項
-
@Earth
no.你錯了。把你的js后綴改成jsp吧。再引用進來試試。祝好運。 - --tudou
- 2.?re: 在javascript使用EL表達式注意事項
- 評論內容較長,點擊標題查看
- --Earth
- 3.?re: 在javascript使用EL表達式注意事項
-
@貝殼里的海
EL表達式作為服務器端的變量在返回到客戶端的時候已經被顯示成變量內容,所以在哪都是可以使用的 - --林齊磊花
- 4.?re: 在javascript使用EL表達式注意事項
- 在javascript函數參數里能寫EL表達式嗎
- --貝殼里的海