美化版BBS学习札记(二)

1、用myeclipse如何连接数据库?
(以mysql为例)
windows--->Show View--->other--->MyEclipse Database--->DB browser--->下面的步骤和在Lomboz_eclopse一样!

2、在bbs.sql中
pid是父id
rootid是根id也是帮助我们展现成平板式的id

3、如何查看DB表中的编码类型呢?
SQL语句:
show create table + 表名 ;
([color=red]前提是查看该表时,你所处的位置应该在表的DB中[/color])

4、如果你的DB中默认编码是utf-8但你的表的编码是GBK(或者GB2312),你在往表中插信息时时插不进去的(准确的说是乱码!),如果非要插呢?
[color=red]解决:[/color]在执行SQL语句前应先写:
[color=red]set names gbk(或者GB2312);[/color]
[color=blue][size=large]这样你在控制台敲得命令是GBK,而内部是utf-8,有了上面那一句,就没关系了,因为mysql的客户端会自动的把GBK转换成utf-8存进去,如果不敲,则插不进去![/size][/color]

5、如何修改mysql的一些常用配置呢?
1)、在windows操作平台及该系统上的mysql相应版本中,修改mysql的一些常用配置可以找到
[color=red][size=large]开始--->程序(所有程序)--->mysql--->mysql Server5.0(我的是5.0版本的)--->mysql Server Instance Config Wizard--->重新一步一步的配置就可以了![/size][/color]
2)、但是如果在Linux操作平台下呢?(因为在Linux的操作平台下全是命令行的方式)
(我的mysql安装在了C盘)
在C盘中找到mysql文件夹--->mysql Server5.0--->my.ini--->打开(我用UE打开的)--->[color=red][size=x-large]第57行有defaut-character-set=gbk(这是我改过的,默认情况下一般是UTF-8)
[/size][/color]

[client]

port=3306

[mysql]

default-character-set=gbk

[color=blue][size=large]这是什么意思呢?之在客户端我们敲得一些命令式上面编码!如果改成gbk,我们就不用再客户端每次执行SQL语句时,都敲set names gbk了![/size][/color]

[color=red][size=x-large]在该文件(my.ini)第81行有default-character-set=utf8(默认就是utf8)这是mysql Server的配置!不要修改!
[/size][/color]

default-character-set=utf8

utf8可以保存全世界各国文字的标准、专业写法,若程序支持国际化,则在底层的数据库一定要保存utf8编码,而非其他的编码(如GBK或者GB2312,因为这两种编码格式仅仅支持中文和英文)
[color=red][size=large]改过my.ini文件一定要重启服务,新改过的编码影响不了原来的DB,所以原来的DB应该删除,再重新导入,再查看,一切正常就OK了!
[/size][/color]
6、静态页面改成动态页面
用dreamweaver打开[color=red]去掉一些无用的标签(比如:静态中有几十行的列表,因为对于动态页面,仅仅需要一行就可以了,在动态中式可以循环的!)[/color]--->考虑图片在什么地方,其他的链接资源放在什么地方--->考虑怎么转换成动态的!

7、修改静态页面时要不断切换代码和设计视图这两个界面

8、如何是HTML的代码工整些呢?
在dreamweaver中“命令”--->套用源格式
这样就可以是源码工整了!

9、[color=red][size=large]在dreamweaver中修改图片时,一定要注意路径问题!
如果在dreamweaver修改不了路径可以换用其他的工具修改(比如:ED、UE等),修改后再用dreamweaver重新装载!
[/size][/color]

10、考虑递归首先是递归的方法,然后是递归的参数!(因为递归的参数是在不断的变化的!)

11、到目前为止对DB的封装比较好的是Spring与Hibernate的封装

12、如果eclipse(或myeclipse)中敲(.)不给提示,恢复的方法:
window--->Preferences--->Java--->Editor--->Conten Assist--->Advanced--->右视图点击Restore Defauts(恢复默认设置)--->OK!

13、在eclipse中如果想在一个方法中将一个名字替换掉(如DB.java中close(ResultSet conn)中将方法中所有conn改成rs)
将修改的名字选中--->点击右键--->Refactor--->Rename--->然后进行修改就可以了!

14、1)、JSP文件本身不需要你写try/catch语句
2)、JSP页面就不应该让其报错,应该是很健全的!

15、在JSP中还有out这个内置对象!但是这个不常用因为被<%=%>替代了!但是如果用out,那是相当麻烦的!以为用out不仅要输出从数据库里取得的信息,而且还要附带将HTML语句!这样写和写Servlet差不多了!(详细参考精简版BBS)
[color=red][size=large]因此要从数据库里输出信息(即表),就要封装成一个类(这个类就是JavaBean)相当于实体类( 所谓实体类就是我们整个业务领域里真实存在的类与对象!)。
然后将实体类放到一个List(因为在List中式有顺序的,而在Set中式没有顺序的),放全以后,再通过ResultSet对象一个一个拿出来,然后再做展现!这就方便了多!
[/size][/color]

16、[color=red]美化版中用递归是当id没有子id时(即不再递归调用了!),再将对象articles传给for循环展示!
[/color]
而精简版中用递归式[color=blue]将id与相应的展示[/color]都存在内存(即那个str)中,然后递归调用直到id没有子id时才在页面展示(即释放内存!)
[color=green][size=x-large]美化版用递归调用没有将相应展示存在内存中,而精简版中有,因为美化版不是用out展示的!也不可能用out展示!
其实本质上都同时是先将要输出的内容先放到内存中,然后再递归调用,等最后不再使用递归时,方法返回,释放内存,直至返回到递归方法的起初位置,然后再一一展现!
[/size][/color]

17、日期化处理,格式化成“年-月-日 时:分:秒”:

new java.text.SimpleDateFormat("yyyy-MM-dd HH:mm:SS").format(参数) ;


18、在封装实体类时,为什么要将级别也封装呢?
其实这是一个冗余字段,因为在递归调用时,要不断传递级别,以此来分清每句话的等级!可是在精简版中没有,而是直接传递的!为什么在美化版中就有了?因为美化版不用out输出展示!因此将级别这个参数附加并封装到实体类中(数据库中可以不用体现这一点!)

19、如何去掉myeclipse中的黄线呢?
这个黄线的意思是检查您的编写代码拼写的正误!(比较烦人!)
window--->Preferences--->General--->Editors--->Text Editors--->Spelling--->右视图找Enable Spell checking,将前面的“√”去掉--->OK
如果还有,则
Project--->Clean--->选“clean all project”--->OK!(这个是清除缓存的)

20、两个页面参数(一般传递id)时,应在项目时间允许的情况下判断一下参数如:

String strId = request.getParameter("id") ;
if(strId == null || strId.trim().equals("")) {
out.println("Error ID!") ;
return ; //如果出错了,页面执行到这!就不在往下进行了!
}
int id = 0 ;
try {
id = Integer.parseInt(strId) ;
}catch(NumberFormatException e) {
out.println("Error ID Again!") ;
return ;

[color=red][size=large]这里有一个小问题strId.trim().equal("")与strId == null 能交换一下位置吗?[/size][/color]
[color=blue][size=large]当然不能!因为当上一个页面传递的参数是空值(null)时,strId的trim方法是不能调用的,因为这样会出现空指针异常(或错误!)即NullPointException[/size][/color]
[color=red][size=large]如果将“||”(短路或)换成“|”(逻辑或)可以吗?当然也不行了,因为用“|”,“|”两边的逻辑语句都要检查!也会出现空指针异常的![/size][/color]

21、如何清除或者减少在myeclipse编写代码过程中,光标乱跳问题?(这种乱跳是一种检查)
window--->Preferences--->MyEclipse---?Validation--->右视图,可以将不想让编辑器检查的选项的“√”去掉!--->OK!
[color=red][size=large]上面的方法没试过,各位看客可以试试,不保证有效![/size][/color]
还有一种:
window--->Preferences--->MyEclipse--->Validation--->右视图选中“Suspend all validations”再找Validation--->JSP--->去掉“Validation JSP fragment”的“√”这样应该比原来好点!
如果还挑米酒干脆用JSP Editor打开JSP文件!

22、在eclipse中如何给一段代码自动加try/catch呢?(非编辑器提示)
将要加try/catch的语句全部选中,点击右键--->Surround With--->Try/catch Block
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值