java技术

智慧是第一生产力
 
 

常用链接

  • 我的随笔
  • 我的评论
  • 我的参与
  • 最新评论

留言簿(8)

  • 给我留言
  • 查看公开留言
  • 查看私人留言

随笔分类

  • flex学习(2) (rss)
  • hibernate学习 (rss)
  • ibatis学习 (rss)
  • java 基础(14) (rss)
  • java水晶报表(1) (rss)
  • java设计模式 (rss)
  • Maven (rss)
  • Seam (rss)
  • spring学习 (rss)
  • struts2学习 (rss)
  • workflow工作流 (rss)
  • 客户端技术 (rss)
  • 工具使用(1) (rss)
  • 开发工具(6) (rss)
  • 数据库(2) (rss)
  • 生活片段(6) (rss)
  • 软件工程(1) (rss)

随笔档案

  • 2010年1月 (1)
  • 2009年12月 (2)
  • 2009年10月 (1)
  • 2009年9月 (6)
  • 2009年8月 (1)
  • 2009年6月 (3)
  • 2009年5月 (1)
  • 2009年2月 (1)
  • 2008年10月 (1)
  • 2008年1月 (2)
  • 2007年9月 (2)
  • 2007年7月 (2)
  • 2006年11月 (1)
  • 2006年10月 (3)
  • 2006年9月 (13)

相册

  • she

搜索

  •  

最新评论

  • 1. re: java 实现ftp上传下载(转)
  • 好 支持文件夹好
  • --ayns
  • 2. re: java 实现ftp上传下载(转)
  • 很好很强大!
  • --ayu.j
  • 3. re: java 实现ftp上传下载(转)
  • 不错 解决了所有的问题,支持多种格式的文件,还支持文件夹上传,借用了,谢谢!
  • --yjq
  • 4. re: ftp实现上传下载,解决了编码问题。
  • 请问,LZ用的什么FTP 服务器?
  • --kdmhh
  • 5. re: java 实现ftp上传下载(转)
  • 很好
  • --taojun

阅读排行榜

  • 1. java 实现ftp上传下载(转)(12077)
  • 2. ftp实现上传下载,解决了编码问题。(11965)
  • 3. Eclipse中配置tomcat(7483)
  • 4. javax.naming.NameNotFoundException: Name jdbc is not bound in this Context(7218)
  • 5. swing调用水晶报表(5375)

评论排行榜

  • 1. Ajax使用POST提交中文乱码问题(转)(10)
  • 2. 手机开通GPRS(7)
  • 3. java 实现ftp上传下载(转)(5)
  • 4. swing调用水晶报表(4)
  • 5. java中的io系统总结.(3)

Powered by: 博客园
模板提供:沪江博客
BlogJava | 首页 | 发新随笔 | 发新文章 | 联系 | 聚合 | 管理

2009年9月28日

ftp实现上传下载,解决了编码问题。
     摘要:     很多人都碰到ftp的上传下载文件的实现,很容易碰到一些问题,最难解决的是乱码的问题, 在网上搜索了挺多,也没人能讲得清楚详细的,这里把自己实现的程序贴出来,供大家参考。 以后碰到这些问题,可以自己多看看java的API,还是很有帮助的。     另外在实现ftp上传下载的时候,还要多考虑一下上传下载失败或...  阅读全文
posted @ 2010-01-19 09:16 空空 阅读(11965) | 评论 (1) | 编辑 收藏
 
mysql命令(转)

测试环境:mysql 5.0.45
【注:可以在mysql中通过mysql> SELECT VERSION();来查看数据库版本】
整理:leo
一、连接MYSQL。
格式: mysql -h主机地址 -u用户名 -p用户密码
1、连接到本机上的MYSQL。
首先打开DOS窗口,然后进入目录mysql\bin,再键入命令mysql -u root -p,回车后提示你输密码.注意用户名前可以有空格也可以没有空格,但是密码前必须没有空格,否则让你重新输入密码.
如果刚安装好MYSQL,超级用户root是没有密码的,故直接回车即可进入到MYSQL中了,MYSQL的提示符是: mysql>
2、连接到远程主机上的MYSQL。假设远程主机的IP为:110.110.110.110,用户名为root,密码为abcd123。则键入以下命令:
mysql -h110.110.110.110 -u root -p 123;(注:u与root之间可以不用加空格,其它也一样)
3、退出MYSQL命令: exit (回车)
二、修改密码。
格式:mysqladmin -u用户名 -p旧密码 password 新密码
1、给root加个密码ab12。首先在DOS下进入目录mysql\bin,然后键入以下命令
mysqladmin -u root -password ab12
注:因为开始时root没有密码,所以-p旧密码一项就可以省略了。
2、再将root的密码改为djg345。
mysqladmin -u root -p ab12 password djg345
三、增加新用户。
(注意:和上面不同,下面的因为是MYSQL环境中的命令,所以后面都带一个分号作为命令结束符)
格式:grant select on 数据库.* to 用户名@登录主机 identified by “密码”
1、增加一个用户test1密码为abc,让他可以在任何主机上登录,并对所有数据库有查询、插入、修改、删除的权限。首先用root用户连入MYSQL,然后键入以下命令:
grant select,insert,update,delete on *.* to [email=test1@”%]test1@”%[/email]” Identified by “abc”;
但增加的用户是十分危险的,你想如某个人知道test1的密码,那么他就可以在internet上的任何一台电脑上登录你的mysql数据库并对你的数据可以为所欲为了,解决办法见2。
2、增加一个用户test2密码为abc,让他只可以在localhost上登录,并可以对数据库mydb进行查询、插入、修改、删除的操作(localhost指本地主机,即MYSQL数据库所在的那台主机),
这样用户即使用知道test2的密码,他也无法从internet上直接访问数据库,只能通过MYSQL主机上的web页来访问了。
grant select,insert,update,delete on mydb.* to [email=test2@localhost]test2@localhost[/email] identified by “abc”;
如果你不想test2有密码,可以再打一个命令将密码消掉。
grant select,insert,update,delete on mydb.* to [email=test2@localhost]test2@localhost[/email] identified by “”;
下篇我是MYSQL中有关数据库方面的操作。注意:你必须首先登录到MYSQL中,以下操作都是在MYSQL的提示符下进行的,而且每个命令以分号结束。
一、操作技巧
1、如果你打命令时,回车后发现忘记加分号,你无须重打一遍命令,只要打个分号回车就可以了。
也就是说你可以把一个完整的命令分成几行来打,完后用分号作结束标志就OK。
2、你可以使用光标上下键调出以前的命令。
二、显示命令
1、显示当前数据库服务器中的数据库列表:
mysql> SHOW DATABASES;
注意:mysql库里面有MYSQL的系统信息,我们改密码和新增用户,实际上就是用这个库进行操作。
2、显示数据库中的数据表:
mysql> USE 库名;
mysql> SHOW TABLES;
3、显示数据表的结构:
mysql> DESCRIBE 表名;
4、建立数据库:
mysql> CREATE DATABASE 库名;
5、建立数据表:
mysql> USE 库名;
mysql> CREATE TABLE 表名 (字段名 VARCHAR(20), 字段名 CHAR(1));
6、删除数据库:
mysql> DROP DATABASE 库名;
7、删除数据表:
mysql> DROP TABLE 表名;
8、将表中记录清空:
mysql> DELETE FROM 表名;
9、显示表中的记录:
mysql> SELECT * FROM 表名;
10、往表中插入记录:
mysql> INSERT INTO 表名 VALUES (”hyq”,”M”);
11、更新表中数据:
mysql-> UPDATE 表名 SET 字段名1=’a',字段名2=’b’ WHERE 字段名3=’c';
12、用文本方式将数据装入数据表中:
mysql> LOAD DATA LOCAL INFILE “D:/mysql.txt” INTO TABLE 表名;
13、导入.sql文件命令:
mysql> USE 数据库名;
mysql> SOURCE d:/mysql.sql;
14、命令行修改root密码:
mysql> UPDATE mysql.user SET password=PASSWORD(’新密码’) WHERE User=’root’;
mysql> FLUSH PRIVILEGES;
15、显示use的数据库名:
mysql> SELECT DATABASE();
16、显示当前的user:
mysql> SELECT USER();
三、一个建库和建表以及插入数据的实例
drop database if exists school; //如果存在SCHOOL则删除
create database school; //建立库SCHOOL
use school; //打开库SCHOOL
create table teacher //建立表TEACHER
(
id int(3) auto_increment not null primary key,
name char(10) not null,
address varchar(50) default ‘深圳’,
year date
); //建表结束
//以下为插入字段
insert into teacher values(”,’allen’,'大连一中’,'1976-10-10′);
insert into teacher values(”,’jack’,'大连二中’,'1975-12-23′);
如果你在mysql提示符键入上面的命令也可以,但不方便调试。
(1)你可以将以上命令原样写入一个文本文件中,假设为school.sql,然后复制到c:\\下,并在DOS状态进入目录[url=file://\\mysql\\bin]\\mysql\\bin[/url],然后键入以下命令:
mysql -uroot -p密码 < c:\\school.sql
如果成功,空出一行无任何显示;如有错误,会有提示。(以上命令已经调试,你只要将//的注释去掉即可使用)。
(2)或者进入命令行后使用 mysql> source c:\\school.sql; 也可以将school.sql文件导入数据库中。
四、将文本数据转到数据库中
1、文本数据应符合的格式:字段数据之间用tab键隔开,null值用[url=file://\\n]\\n[/url]来代替.例:
3 rose 大连二中 1976-10-10
4 mike 大连一中 1975-12-23
假设你把这两组数据存为school.txt文件,放在c盘根目录下。
2、数据传入命令 load data local infile “c:\\school.txt” into table 表名;
注意:你最好将文件复制到[url=file://\\mysql\\bin]\\mysql\\bin[/url]目录下,并且要先用use命令打表所在的库。
五、备份数据库:(命令在DOS的[url=file://\\mysql\\bin]\\mysql\\bin[/url]目录下执行)
1.导出整个数据库
导出文件默认是存在mysql\bin目录下
mysqldump -u 用户名 -p 数据库名 > 导出的文件名
mysqldump -u user_name -p123456 database_name > outfile_name.sql
2.导出一个表
mysqldump -u 用户名 -p 数据库名 表名> 导出的文件名
mysqldump -u user_name -p database_name table_name > outfile_name.sql
3.导出一个数据库结构
mysqldump -u user_name -p -d –add-drop-table database_name > outfile_name.sql
-d 没有数据 –add-drop-table 在每个create语句之前增加一个drop table
4.带语言参数导出
mysqldump -uroot -p –default-character-set=latin1 –set-charset=gbk –skip-opt database_name > outfile_name.sql

 

本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/networld2002/archive/2009/04/23/4103407.aspx

posted @ 2009-12-04 15:38 空空 阅读(247) | 评论 (0) | 编辑 收藏
 
windows平台下Apache2.2+php5+MySQL5+zend的环境搭建配置(转)
网上已经有很多此类文章了,但我在CSDN仍看到不少新人为此问题困扰。
 
1.便捷方法:装一体化环境,如果你并非打算深入,或者刚入门。则可以先用一体化环境来配置。优点是下完安装即可使用,1分钟就能搞定。如果原来系统中装有IIS,则把端口设为 81或者其他非80端口。(以下皆为apache+php+mysql+zend)
 
  1> php4的一体化环境
http://www.onlinedown.net/soft/22078.htm
 
  2> php5的一体化环境
http://www.onlinedown.net/soft/42567.htm
 
2.如果你需要一个较为稳健而功能强劲的配置环境,则参看以下。本文采用最新版本的php、apache、mysql、zend。
 
其实,因为网上很多文章其实也没什么错,但有些细节的地方有问题。特别是在apache2.2.4与php5模块化安装的整合上。
 
先准备安装文件,几个安装文件我用华军软件园的下载地址,大家放心下:
 
apache2.2.4
最新版http://www.onlinedown.net/soft/11528.htm
发帖时最新版http://ytcnc.onlinedown.net/down/apache_2.2.4-win32-x86-no_ssl.zip
 
php5.2.3
最新版http://www.onlinedown.net/soft/1772.htm
发帖时最新版http://sx.huajun.net/down/php-5.2.3-Win32.zip
 
Mysql5.0.41
最新版http://www.onlinedown.net/soft/3573.htm
发帖时最新版http://sccnc.onlinedown.net/down/mysql-5.0.41-win32.zip
 
zend optimizer 3.2.6
最新版http://www.onlinedown.net/soft/32228.htm
发帖时最新版http://sccnc.onlinedown.net/down/ZendOptimizer-3.2.6-Windows-i386.zip
 
phpmyadmin
最新版http://www.onlinedown.net/soft/2616.htm
发帖时最新版http://sccnc.onlinedown.net/down/phpMyAdmin-2.10.3-rc1-all-languages.zip
 
-----------------------------------------------------------------------
 
1.安装apache2.2.4至某个目录比如我的是D:"apache2
2.解压php5到D:"apache2"php5目录下
3.安装mysql5到D:"apache2"mysql目录下
 
4.配置apache:
 1)打开d:"apache2"conf目录下的httpd.conf文件。
 2)apache httpd.conf设置
  A.网站主目录设置:搜索DocumentRoot "D:/apache2/htdocs"
  修改引号中的地址,为apache网页主目录。也就是http://localhost:端口号的目录。
  B.端口设置:搜索 listen,改为 Listen 81(此例中以81为端口)。如不装IIS可保留默认值为80。设为81,则主页为 http://localhost:81 否则为http://localhost
  C.加载php5模块化安装:搜索Loadmodule,在后面加一行:
LoadModule php5_module d:/apache2/php/php5apache2_2.dll
 
(这里是很多网上攻略出错的地方,apache2.2版本以下一般为
LoadModule php5_module d:/apache2/php/php5apache2.dll
apache2.2以上的版本则不行。更有甚者,竟然把php5apache2.dll改写成支持apache2.2的了,牛是很牛了,但不知道中国搞技术的到底是怎么了,都懒得自主思考,一点怀疑精神都没有。)
  
  D. php格式解析
   搜索 addType application在后面加一行:
   AddType application/x-httpd-php .php
  
  E.字符集

  搜索 AddDefaultCharset ISO-8859-1 将其改为

  AddDefaultCharset GB2312

5.配置php

  至D:"apache2"php目录下,把 php.ini-dist或php.ini-recommended拷贝至c:"windows目录下,改名为php.ini。拷贝D:"apache2"php目录下的php5ts.dll,libmysql.dll至C:"windows"system32目录下
 
   配置php.ini
   A.找到extension_dir设置为 "d:"apache2"php"ext"绝对路径,否则有些环境中会出错。
    
   b.打开功能扩展
搜索以下行,把前面的分号删除。比如
“;extension=php_mysql.dll”改为“extension=php_mysql.dll
”
#下面两行为mysql5必备,记得php_mysqli.dll必须加载,否则连不上。
extension=php_mysql.dll  
extension=php_mysqli.dll
 
#php连sql server,有用到的就设置一下
extension=php_mssql.dll

#curl功能扩展,想用php写些脚本处理远程服务期的响应消息的可以打开
extension=php_curl.dll
 
#GD库安装,此功能打开可用数据库以二进制存储图片
extension=php_gd2.dll
 
#东亚语系必备,增加字符处理速度
extension=php_mbstring.dll
 
   C.实用功能自定义配置
 
#session的存储目录。如果有内存虚拟硬盘,可以把用到的暂存处理目录都设置到
内存虚拟盘中进一步提高服务器响应速度。
   session.save_path = D:/apache2/htdocs/php_session 
 
#这个是每个脚本运行的最长时间,可以自己修改加长,单位秒
max_execution_time = 30

#这是每个脚本可以消耗的时间,单位也是秒
max_input_time = 60

#这个是脚本运行最大消耗的内存,最好设为16M以上,有的程序要求,比如openads

memory_limit = 16M

#上载文件的最大许可大小,一般post大小>upload_max_filesize。比如我的设置:

post_max_size = 300M

upload_max_filesize = 250M

6.至此,配置完成大半。

mysql与zend只要按需安装即可。装完后重启apache服务器即可。

7.最后推荐个好东西,apache的monitor.exe,可以控制apache、myql、IIS、sql server等服务器开关。好东西,我找了挺久的。感谢原作者,抱歉忘了大名

http://www.1thz.cn/apachemonitor.exe

  
8.如果您对服务器性能要求很高,我这里推荐您一个非常棒的平台组合。lighttpd可以取代apache,更轻,性能更优秀。 PostPre SQL 取代 Mysql,极其强大的开源数据库,完全满足企业商务级数据库需求。
posted @ 2009-12-04 15:35 空空 阅读(572) | 评论 (0) | 编辑 收藏
 
使用dom4j的xPath解析XML(转)
books.xml:
<?xml version="1.0" encoding="UTF-8"?>
<books>
    <!--This is a test for dom4j, jakoes, 2007.7.19-->
    <book show="yes" url="lucene.net">
        <title id="456">Lucene Studing</title>
    </book>
    <book show="yes" url="dom4j.com">
        <title id="123">Dom4j Tutorials</title>
    </book>
    <book show="no" url="spring.org">
        <title id="789">Spring in Action</title>
    </book>
    <owner>O'Reilly</owner>
</books>

下面我们使用dom4j的xPath来解析:

segment of ParseXML.java:

    public void parseBooks(){
       
        SAXReader reader = new SAXReader();
        try {
            Document doc = reader.read("books.xml");
            Node root = doc.selectSingleNode("/books");
            List list = root.selectNodes("book[@url='dom4j.com']");
           
            for(Object o:list){
               
                Element e = (Element) o;
                String show=e.attributeValue("show");
                System.out.println("show = " + show);
            }
          
        } catch (Exception e) {
            e.printStackTrace();
        }
    }

  Document doc = reader.read("books.xml");的意思是加载XML文档,此是可以用doc.asXML()来查看,它将打印整个xml文档。

  Node root = doc.selectSingleNode("/books");是读取刚才加载的xml文档内的books节点下的所有内容,对于本例也是整个xml文档。
  当然我们也可以加载/books下的某一个节点,如:book节点
Node
root = doc.selectSingleNode("/books/book");
或:
Node root = doc.selectSingleNode("/books/*");
注意:如果有多个book节点,它只会读取第一个
root.asXML()将打印:
<book show="yes" url="lucene.net">
        <title id="456">Lucene Studing</title>
</book>

  既然加载了这么多,那我怎么精确的得到我想要的节点呢,别急,看下面:
List list = root.selectNodes("book[@url='dom4j.com']");
它的意思就是读取books节点下的
book节点,且book的节点的url属性为dom4j.com
为什么使用list来接收呢,如果有两个book节点,且它们的url属性都为dom4j.com,此时就封闭到list里了。

  如果想读取books下的所有book节点,可以这样:
List list = root.selectNodes("book");

  如果想读取books节点下的book节点下的title节点,可以这样:
List list2 = root.selectNodes("book[@url='dom4j.com']/title[@id='123']");

  注意:
selectNodes()参数的格式:
  节点名[@属性名='属性值'],如:
book[@url='dom4j.com']
  如果有多个节点,用“/”分开,如:
book[@url='dom4j.com']/title[@id='123']

  最近就是读取封闭在List里的内容了,可以用Node来读取,也可以用Element来转换。
attributeValue("属性")是读取该节点的属性值
getText()是读取节点的的内容。
posted @ 2009-10-19 15:11 空空 阅读(636) | 评论 (0) | 编辑 收藏
 
读取struts配置文件的路径问题
今天测试别人的程序,发现struts的配置文件出了问题,主要有两个(以前没用过struts1,网上很多人的解答也对不上),

一个是web.xml文件中的struts配置文件路径的写法问题,解决办法是在struts配置文件路径前加上"/"
<init-param>
   <param-name>config</param-name>
   <param-value>/struts_test.xml</param-value>
  </init-param>
抛的异常如下:
2009-9-28 13:33:53 org.apache.struts.action.ActionServlet handleConfigException
严重: Parsing error processing resource path struts_test.xml
java.net.MalformedURLException: Path struts_test.xml does not start with a "/" c
haracter
        at org.apache.catalina.core.ApplicationContext.getResource(ApplicationCo
ntext.java:473)


一个是web.xml中的struts文件的路径,struts配置文件应该是放在class目录下,比如src的根目录下,
配置就是<param-value>/struts_test.xml</param-value>,而不是WEB-INF中的路径。

严重:   Servlet   /Message   threw   load()   exception
javax.servlet.UnavailableException:   Missing   configuration   resource   for   path   /WEB-INF/struts-config.xml
at   org.apache.struts.action.ActionServlet.parseModuleConfigFile(ActionServlet.java:732)
at   org.apache.struts.action.ActionServlet.initModuleConfig(ActionServlet.java:687)
at   org.apache.struts.action.ActionServlet.init(ActionServlet.java:333)
posted @ 2009-09-28 14:39 空空 阅读(926) | 评论 (0) | 编辑 收藏