/** * 查询信息 */ public void checkMessage(){ TimerTask tt = new TimerTask() { public void run() { String unreadMsgNo = new CheckMessage().getUnreadMsgNo (URL, USER, PASSWORD); if(unreadMsgNo.equals("0")){ jLabelMsgTip.setText("您没有新信息!"); } else{ jLabelMsgTip.setText("您有" + unreadMsgNo + "条新信息!"); } } }; Timer t = new Timer(); t.schedule(tt, 0, (long)1000*15);//每隔15秒执行一次 }Leave a Comment
Daoyuan Li Posts
VPD 即Virtual Private Databases,提供了对数据库的精密访问控制 (graind access control (FGAC) ),使用VPD,可以在数据记录集定义用户的访问权限。
通过VPD 策略,相当于用户操作数据库中的数据时隐式添加一些条件。比如我们要实现特定角色只能操作数据库表中的特定行的数据,这就可以用 VPD 策略实现。现在以车队长只能操作员工表中的属于他的车队的员工的数据信息为例具体说明:
1. 构造策略函数:
CREATE OR REPLACE FUNCTION "VPD"."FUN_MOTORCADE" ( p_schema in varchar2, p_table in varchar2 ) return varchar2 as l_retstr varchar2(100); eid number(5, 0); did number(5, 0); begin if lower(user)<> 'admin' then l_retstr := null; for user_rec in ( select eid, did from dpmanager where loginname = lower(user) ) loop eid := user_rec.eid; did := user_rec.did; end loop; l_retstr := 'did = ' || did ;--|| 'eid = ' || eid; return l_retstr; else l_retstr := null; return l_retstr; end if; end;
2. 授予执行策略函数的权限:
grant execute on FUN_MOTORCADE to public;
3. 向数据库表添加策略:
Begin Dbms_Rls.Add_Policy( Object_Schema =>'admin', --数据表(或视图)所在的Schema名称 Object_Name =>'employee', --数据表(或视图)的名称 Policy_Name =>'motorcade_ply', --POLICY的名称,主要用于将来对Policy的管理 Function_Schema =>'vpd', --返回Where子句的函数所在Schema名称 Policy_Function =>'fun_motorcade', --返回Where子句的函数名称 Statement_Types =>'Select,Insert,Update,Delete', --要使用该Policy的DML类型,如'Select,Insert,Update,Delete' Update_Check =>True, --仅适用于Statement_Type为'Insert,Update',值为'True'或'False' Enable =>True --是否启用,值为'True'或'False' ); end;
最开始不明白策略函数的作用,花了好几天上网查资料才知道原来函数的返回值便是你想往表上加的隐式约束。
比如,你向EMP表添加了下面的策略函数:
CREATE OR REPLACE FUNCTION "VPD"."TEST" ( p_schema in varchar2, p_table in varchar2 ) return varchar2 as l_retstr varchar2(100); begin if user = ‘admin’ then l_retstr := ‘1 = 1’; else l_retstr := ‘1 = 2’; end if; return l_retstr; end;
现在,如果你以admin身份登录执行 ‘SELECT * FROM EMP’ , 则实际执行的是 ‘SELECT * FROM EMP WHERE 1 = 1’ , 其中 ‘1 = 1’ 这个条件是策略函数的返回值;如果你以其他身份登录执行 ‘SELECT * FROM EMP’ , 则实际执行的是 ‘SELECT * FROM EMP WHERE 1 = 2’ 。
Leave a CommentHere you can find the manual (in Chinese) for CrazyBus system.
Leave a CommentHello, my name is Daoyuan Li and I’m currently a researcher at Ericsson Research NomadicLab in Finland. My research areas include Wireless Mesh Networks, Wireless Sensor Networks, Delay Tolerant Networks, and Prototyping.
I got a Master of Science (Technology) degree in August 2011 from Helsinki University of Technology (TKK, merged into Aalto University since January 1st, 2010) in Finland. I also hold a Master of Science degree from Royal Institute of Technology (KTH) in Sweden, since I studied there from August 2009 to July 2010, as an exchange master student in Erasmus Mundus NordSecMob Program.
I got my bachelor’s degree in Software Engineering in July 2009 from Jilin University in China. During the four years there, I focused on Software Engineering, algorithms and data structures, databases, compiling principles and programming languages, operating systems and computational mathematics and so on.
I’m familiar with network protocols like TCP/IP and routing protocols such as OSPF, IS-IS, RIP, BGP and so on. I have a good knowledge of both CISCO and Juniper routers and bridges. I’m good at programming, especially in C/C++ and Java. I also like using bash scripts and I’m very familiar with the architecture and usage of GNU/Linux systems.
In my spare time I enjoy reading novels. Dream of the Red Chamber (In Chinese: 红楼梦) is my favorite novel. I also like Dan Brown, One Hundred Years of Solitude, and Pride and Prejudice. I like to take photos, too. I’m also a regular blogger, and you can find my blog here, but the earlier entries are mainly written in Chinese. My other interests are travelling, cycling and swimming.
Leave a CommentCrazyBus public transport management system is a system used to help public transport companies manage their daily affairs. The system contains several modules including employee management, department management, bus management, line and bus stop management and lookup, business achievement management, accident management, user management, ticket management, IC card management, and so on.
It contains a Client/Server (C/S) system written in Java, and a Browser/Server (B/S) system written in JSP. The C/S module handles all the management tasks, while the B/S system handles users’ lookup requests and feedbacks and so on. The system uses Oracle 9i as database management system.
在瑞典语教材上看到这么一句话:Det finns inget dåligt väder, bara dåliga kläder.
“没有糟糕的天气,只有不合适的衣服。”
很佩服瑞典人的这种精神,虽然冬天天寒地冻,也不抱怨丝毫,而是想办法去适应自己改变不了的大自然。所幸上天对所有人都是有所眷顾的,这里天堂般的夏天就是明证。
生活也是如此,有时候人是没办法跟命运较劲的,这时不要自视太高,也没必要怨声载道。坦然接受现实,平和的顺应天意,这才是优雅高贵的心态举止。
Leave a Comment
刚收到邮件说考试通过了,于是我七月又有事可干了。
发个我搜集的瑞典语资料:
Introduction to Swedish© by Urban Sikeborg, Stockholm (1997-98). 这个资料很赞,讲了瑞典语基本的语法,以及名词、动词、形容词、代词的基本用法,而且最后的发音指南也很有用。强烈推荐。 http://www2.hhs.se/isa/swedish/default.htm
斯德哥尔摩大学的瑞典语入门教学资料 Kom loss på svenska,文字配有音频。推荐,地址为: http://www.nordiska.su.se/komloss/
Rosetta Stone Swedish 罗赛塔石碑瑞典语:http://www.verycd.com/topics/2750727/
Teach Yourself Swedish:网上能找到这本书的电子版,以及配套音频。
YouTube上的用中文教瑞典语的视频:http://www.youtube.com/user/allajiajia
FSI Swedish,比较老,有文本和音频可以下载:http://fsi-language-courses.org/Content.php?page=Swedish
林林小筑:http://www.linlinhouse.com/category/studyinsweden
资料不在多而在精。个人意见:把第一个Introduction to Swedish看完记熟,瑞典语就基本入门了。
Leave a Commentadjectives
stor | liten | big | small |
lång | kort | long | short |
hög | låg | high | short |
bred | smal | broad | narrow |
tjock | smal | thick | thin |
bra | dålig | good | bad |
rak | krokig | straight | bent |
rak | sned | direct | pitched |
vacker | ful | beautiful | ugly |
glad | ledsen | happy | sad |
mätt | hungrig | full | hungry |
ljus | mörk | light | dark |
blond | mörk | blond | black |
lugn | orolig | calm | worried |
rolig | tråkig | funny | boring |
pigg | trött | alive | tired |
frisk | sjuk | healthy | sick |
stark | svag | strong | weak |
ung | gammal | young | old |
ny | gammal | new | old |
torr | våt | dry | wet |
slät | skrynklig | plane | wrinkled |
hel | trasig | complete | broken |
full | tom | full | empty |
mjuk | hård | soft | hard |
ren | smutsig | clean | dirty |
ledig | upptagen | free | ocupied |
snabb | långsam | quick | snow |
lätt | tung | light | heavy |
lätt | svår | easy | difficult |
ha råd att: can afford to… Jag har inte råd att köpa en ny bil.
subjekts | objekts | reflexiv | possessiv | ||
jag | mig | mig | min | mitt | mina |
du | dig | dig | din | ditt | dina |
han | honom | sig | hans | hans | hans |
hon | henne | sig | hennes | hennes | hennes |
det | det | sig | dess | dess | dess |
den | den | sig | dess | dess | dess |
vi | oss | oss | vår | vårt | våra |
ni | er | er | er | ert | era |
de | dem | sig | deras | deras | deras |
Vad ska du/ni använda det stora tältet till? What are you using the big tent for?
Vad ska du/ni använda den elektriska generator till?
Jag ska få/generera elektricitet med den elektriska generatorn.
Leave a Comment
en kinesiska gryta: chinese hotpot
Det låter gott. Sounds good.
Beijing ligger i norra Kina. = Beijing ligger i norr.
en stad, staden, städer, städerna
ett land, landet, länder, länderna
en öken, öknen, öknar, öknarna
både & båda, både is usually used with och
Jag har två systrar. Båda bor i Stockholm.
Både Eva och Ann bor i Stockholm.
Stockholm är en vacker stad. = Stockholm är vackert.
en stor bil, min stora bil, den stora bilen
stora bilar, mina stora bilar, de stora bilarna
ett stort hus, mitt stora hus, det stora huset
stora hus, mina stora hus, de stora husen
Leave a Comment
Det var mycket folk på stan.
Vid 4-tiden: around 4 o’clock
Ven har tagit mina pengar?
Jag tog dem.
Var snäll och skriv ett brev varje vecka.
Har du ätit frukost iday?
Nej, jag har inte ätit något iday.
Vilken fin tröja du har! What a nice shirt you have!
vilken, vilket, vika:
what/which
Vilket trevligt skor du har!
en frisyr: hair style
glasögon: glasses
Vilka fina glasögon du har!
Vilket vackert hår du har!
Vad kallt! How cold!
Vad varmt!
Vad skönt! How comfortable!
Vad dyrt!
Vad kul!
Vad trevlig!
Vilka vackra ögon du har! What beautiful eyes you have!
Du ljuer. You lie.
randig: stripped, lined
rutig:
checked
Känn på mitt hård slag!
Jag tycker att kinesisk mat är god.
Jag tycker att tyskt öl är gott.
Jag tycker att det är kallt idag.
Jag tycker om kinesisk mat.
Jag tror att Brasilien vinner.
Vi tror att sommaren blir kallt.
Han tror på Gud.
Tror du på ett liv efter det här?
Jag tror på dig.
Jag tänker på mina ekonomiska problem.
Jag tänker ofta på min
familj/flickvän/pojkvän/mina föräldrar.
Vad tänker du i kväll? tänker-ska
Så fort jag tänker på kärlet, tanker jag på min man, och då kan jag inte tänka på kärlet längre.
Leave a Comment今天瑞典女王储大婚,我跟斯德哥尔摩五十万现场观众见证了这一历史性时刻,一切都感觉那么真实、那么令人感动、那么让人热血沸腾和震撼。
为了保证公主夫妇的安全,从昨天开始斯德哥尔摩的公交车就部分停运了,不过地铁正常运行,而且今天还对民众免费。于是我们一行人坐地铁到Kungstägåden,在附近的一个广场观看直播。我们到的时候广场上已经是人山人海,我在斯德哥尔摩从未见过这么多人,人数比上周国庆的时候多了好几倍。
费了九牛二虎之力终于挤到了大屏幕前面,瑞典大公主Victoria已经挽着国王Carl XVI Gustaf的手款款的走进了教堂,而公主的未婚夫Daniel已经在圣坛前的过道中央等候,从国王手中接过公主并相互亲吻之后,他们又款款的走向圣坛。
当牧师宣布他们成为夫妇时,广场上一阵沸腾,大家无不拍手称好,伴随掌声的还有女生们的尖叫。也行面对别人的幸福,自己也会有一种发自心底的强烈的追求自己幸福的渴望吧,至少我是这样。
中间一个小插曲是,Daniel和Victoria相互发誓并交换戒指之后,Daniel流出了激动地泪水,而Victoria眼中也是泪光闪闪。而现场观众们俏皮的笑声也让人感到无比温馨。
之后公主和驸马乘马车在斯德哥尔摩市区转了一圈,并频频向路边的观众挥手致意。他们每到一处,迎接他们的总是尖叫声,看来瑞典人对王室的热情还真不小。昨天上瑞典语课的时候老师说她自己对这个婚礼不太感兴趣,因为这个驸马从小生活在乡村,当驸马肯能还不太合适。而以前也听说过瑞典人都管驸马爷叫”gym guy”,因为他是个健身教练,现在还经营者几家健身房。而且以前似乎国王也不太瞧得起这个女婿,不太赞成他们的婚事,但公主和驸马分手未遂,于是国王只好作罢。这就是一个现代的男版灰姑娘的故事嘛!
个人还是比较希望他们能恩恩爱爱的过一辈子,不管是面对挑剔的媒体,还是在褪下公主和驸马的光环之后,都能深情相拥,一直到老。
视频在这儿:Det kungliga bröllopet
Leave a Comment