当前位置:文档之家› java开发用服务器配置指南(中文版)

java开发用服务器配置指南(中文版)

java开发用服务器配置指南(中文版)
java开发用服务器配置指南(中文版)

开发用服务器安装设置指南

Redhat Linux 9.0

Samba 2.2.7a

Apache 2.0.48

J2SDK 1.4.2

Tomcat 5.0.16

mod_jk2 2.0.48

Ant 1.6.0

PostgreSQL 7.4.1

Struts 1.1

作者:彭健

最后修订日:2004年1月30日

计算机名和IP地址的说明 (2)

操作用户以及命令写法的说明 (2)

安全性的说明 (2)

文字颜色的说明 (2)

设置Samba,共享出一个目录给Windows网络环境,以方便后续安装 (2)

删除Red Hat Linu x自带的旧版本的Apache(httpd) (3)

安装最新版本的Apache(httpd) (4)

SSL设定(略) (6)

安装最新版本的J2SDK (6)

安装最新版本的Tomcat (7)

设置J2SDK和Tomcat的环境变量 (7)

配置Tomcat开发环境 (7)

安装设置JK2,将Apache、Tomcat配置成分工合作 (9)

将Apache、Tomcat配置成自动启动 (10)

安装最新版本的Ant (12)

删除Red Hat Linu x自带的旧版本的PostgreSQL (12)

安装最新版本的PostgreSQL (12)

安装最新版本的Struts (14)

安装最新版本的iBatis (15)

安装最新版本的PHP(略) (15)

安装最新版本的MySQL(略) (15)

安装最新版本的Oracle(略) (15)

计算机名和IP地址的说明

我安装Redhat Linux 9时指定的计算机名为rhlinux9,IP地址为192.168.0.11。你参照本指南安装设置时,要把本指南中出现的rhlinux9或192.168.0.11换成你的机器的名字或IP地址。

操作用户以及命令写法的说明

我比较懒,所以一直是用root用户的身份安装、配置,只在必要时才以别的用户身份操作。我的做法很危险!建议你建立一个普通用户,必要时才su成root用户。另外,我下面输入的命令中以#开头的都是以root 用户身份输入的,以$开头的都是以其他用户身份输入的。你输入命令时并不需要输入#或$。另外,在我的RH Linux 9中,下载下来的文件全部都是放在/usr/public/pckg/目录中,而且为了操作方便,/usr/public/目录通过samba共享给了windows网络环境。建议你按照本说明配置服务器之前,先熟悉一下vi的操作,你可以在RH Linux 9的输入vimtutor开始你的学习。

安全性的说明

我安装的只是开发用的服务器,几乎就没考虑安全性,只是考虑开发时的便利。尤其是这里的Samba、Tomcat和PostgreSQL的一些设置,很不安全。而且,我很多环境变量都是设定给所有用户(/etc/profile),这也很不安全。本说明不对你的任何损失承担责任。

文字颜色的说明

黑颜色的为解释说明

蓝颜色的为输入的命令(除非特别说明,以下所有命令我都是以root用户身份运行的)

灰颜色的输入命令后输出的结果文字

绿颜色的为设置文件中的新增加的行

红颜色而且中划线的为设置文件中的被删除掉的行

;红颜色而且开头为分号(;)的是设置文件中的被注释掉的行

#红颜色而且开头为井号(#)的也是设置文件中的被注释掉的行

紫颜色的为设置文件中的直接修改后的行(当然你也可以注释或删除掉原行,再新增加一行)

设置Samba,共享出一个目录给Windows网络环境,以方便后续安装 生成一个新目录,并改变其权限模式

# cd /usr

# mkdir public

# ls –l public

# chmod 777 public

# ls –l public

修改Samba的设定文件

# vi /etc/samba/smb.conf

===========smb.conf change begin==========

workgroup = yourworkgroupname

server string = PengJian's Samba Server

security = share

;[homes]

; comment = Home Directories

; browseable =no

; writable =yes

; valid users = %S

; create mode = 0664

; directory mode = 0775

[public]

comment =public folder

path = /usr/public

writeable =yes

guest ok =yes

create mask =0666

directory mode =0777

===========smb.conf change end==========

重新启动Samba服务

# /sbin/service smb restart

(若必要的话)确保Linux服务器启动时,Samba服务也能自动启动

# /sbin/chkconfig --list

# /sbin/chkconfig --level 2345 smb on

# /sbin/chkconfig --list

最后,建议你通过网络,从Windows系统试着访问一下共享出来的public目录;你可以参照以上步骤,共享出更多目录。

删除Red Hat Linu x自带的旧版本的Apache(httpd)

首先测试删除,以检查直接依存于Apache的包有哪一些

# rpm -e --test httpd

error: Failed dependencies:

httpd-mmn =20020628 is needed by (installed) mod_perl-1.99_07-5

httpd-mmn =20020628 is needed by (installed) mod_python-3.0.1-3

httpd-mmn = 20020628 is needed by (installed) mod_ssl-2.0.40-21

httpd-mmn = 20020628 is needed by (installed) php-4.2.2-17

libapr.so.0 is needed by (installed) mod_perl-1.99_07-5

libaprutil.so.0 is needed by (installed) mod_perl-1.99_07-5

webserver is needed by (installed) webalizer-2.01_10-11

httpd >=2.0.40 is needed by (installed) mod_perl-1.99_07-5

httpd >= 2.0.40 is needed by (installed) mod_python-3.0.1-3

httpd is needed by (installed) mod_ssl-2.0.40-21

httpd is needed by (installed) redhat-config-httpd-1.0.1-18

还要检查间接依存于Apache的包有哪一些

# rpm -e –test php

error: Failed dependencies:

php = 4.2.2-17 is needed by (installed) php-imap-4.2.2-17

php = 4.2.2-17 is needed by (installed) php-ldap-4.2.2-17

删除所有依存于Apache的包(注意:因为我计划将来手动安装最新版的PHP等,所以我现在毫不犹豫地删除之。你的情况要自己判断!)

# rpm -e mod_perl

# rpm -e mod_python

# rpm -e mod_ssl

# rpm -e redhat-config-httpd

# rpm -e webalizer

# rpm -e php-ldap

# rpm -e php-imap

# rpm -e php

删除Apache自身

# rpm -e httpd

安装最新版本的Apache(httpd)

从https://www.doczj.com/doc/9d16481171.html,/download.cgi处下载最新版的Apache,并放到前面共享出来的public 目录(下同)

解压缩下载好的Apache安装包

# cd /usr/public

# tar zxvf httpd-2.0.48.tar.gz

配置、编译、安装

# cd /usr/public/httpd-2.0.48

# ./configure

# make

# make install

确认安装了哪些模块

# /usr/local/apache2/bin/httpd -l

Compiled in modules:

core.c

mod_access.c

mod_auth.c

mod_include.c

mod_log_config.c

mod_env.c

prefork.c

http_core.c

mod_mime.c

mod_status.c

mod_autoindex.c

mod_asis.c

mod_cgi.c

mod_negotiation.c

mod_dir.c

mod_imap.c

mod_actions.c

mod_userdir.c

mod_alias.c

mod_so.c

发现我想要的mod_ssl模块没有被安装,所以我重新配置、编译、安装。(前面3行拷贝是为了后面的configure和make能成功。不知大家有何良策。)

# cp /usr/kerberos/include/krb5.h /usr/include/openssl/

# cp /usr/kerberos/include/profile.h /usr/include/openssl/

# cp /usr/kerberos/include/com_err.h /usr/include/openssl/

# cd /usr/public/httpd-2.0.48

# ./configure –enable-ssl

# make

# make install

再次确认安装了哪些模块。请注意mod_ssl.c被成功编译了。

# /usr/local/apache2/bin/httpd -l

Compiled in modules:

core.c

mod_access.c

mod_auth.c

mod_include.c

mod_log_config.c

mod_env.c

mod_setenvif.c

mod_ssl.c

prefork.c

http_core.c

mod_mime.c

mod_status.c

mod_asis.c

mod_cgi.c

mod_negotiation.c

mod_dir.c

mod_imap.c

mod_actions.c

mod_userdir.c

mod_alias.c

mod_so.c

(若必要的话)修改Apache的服务器名字等等。

# vi /usr/local/apache2/conf/httpd.conf

===========httpd.conf change begin==========

ServerName 192.168.0.11:80

===========httpd.conf change end==========

启动Apache服务

# /usr/local/apache2/bin/apachectl start

确认Apache服务是否正常启动了(你也可通过Windows上的浏览器中输入http://192.168.0.11来确认)

# tail -n 5 /usr/local/apache2/logs/error_log

# ps -ef | grep httpd

SSL设定(略)

安装最新版本的J2SDK

从https://www.doczj.com/doc/9d16481171.html,/j2se/1.4.2/download.html处下载最新版的J2SDK。建议先仔细阅读一下官方安装指南(https://www.doczj.com/doc/9d16481171.html,/j2se/1.4.2/install-linux.html)。

确认有执行权限

# ls -l

# chmod +x j2sdk-1_4_2_02-linux-i586.bin

# ls -l

拷贝到你想安装的目录

# cp j2sdk-1_4_2_02-linux-i586.bin /usr/local/

运行并安装之,会自动生成一个名为j2sdk1.4.2_02的目录

# cd /usr/local/

# ./ j2sdk-1_4_2_02-linux-i586.bin

删除不要的拷贝

# rm j2sdk-1_4_2_02-linux-i586.bin

安装最新版本的Tomcat

从https://www.doczj.com/doc/9d16481171.html,/site/binindex.cgi处下载最新版的Tomcat。

解压缩

# tar zxvf jakarta-tomcat-5.0.16.tar.gz

改名拷贝到你想安装的目录

# cp –R jakarta-tomcat-5.0.16 /usr/local/tomcat

设置J2SDK和Tomcat的环境变量

在/etc/profile中设置J2SDK和Tomcat的环境变量,以使全部用户可用。(若你要对不同用户有不同的设置,请修改各个用户home目录下的.bash_profile文件)

# vi /etc/profile

在unset pathmunge行的前面追加以下行

===========profile change 1 begin==========

JAVA_HOME=/usr/local/j2sdk1.4.2_02

TOMCAT_HOME=/usr/local/tomcat

CATALINA_BASE=$TOMCAT_HOME

CATALINA_HOME=$TOMCAT_HOME

CLASSPATH=$CLASSPATH:.:$CATALINA_HOME/common/lib/servlet-api.jar:$CATALIN

A_HOME/common/lib/jsp-api.jar

pathmunge $JAVA_HOME/bin after

===========profile change 1 end==========

修改export行(新增加的export行应该写成一行,不要换行)

===========profile change 2 begin==========

#export PATH USER LOGNAME MAIL HOSTNAME HISTSIZE INPUTRC

export PATH USER LOGNAME MAIL HOSTNAME HISTSIZE INPUTRC JAVA_HOME TOMCAT_HOME CATALINA_BASE CATALINA_HOME CLASSPATH

===========profile change 2 end==========

使以上的环境变量修改立即生效

# source /etc/profile

确认环境变量修改是否有效(会显示很多信息,请注意查看PATH、CLASSPATH、JAVA_HOME、TOMCAT_HOME等。你也可以使用echo命令查看单一信息,如echo $CLASSPATH)

# set

配置Tomcat开发环境

首先试着在缺省设置下启动Tomcat

# /usr/local/tomcat/bin/startup.sh

Using CATALINA_BASE: /usr/local/tomcat

Using CATALINA_HOME: /usr/local/tomcat

Using CATALINA_TMPDIR: /usr/local/tomcat/temp

Using JAVA_HOME: /usr/local/j2sdk1.4.2_02

在网络上的其他计算机的互联网浏览器(比如IE)中,输入http://192.168.0.11:8080/,你应该可以看到Tomcat的页面(左上角有一只猫)。

修改tomcat-users.xml,使你成为管理用户

# vi /usr/local/tomcat/conf/tomcat-users.xml

===========tomcat-users.xml change begin==========

===========tomcat-users.xml change end==========

重新tomcat服务器

# /usr/local/tomcat/bin/shutdown.sh

# /usr/local/tomcat/bin/startup.sh

下面我想新建一个tomcat的应用目录(当然你也可以用缺省的ROOT应用目录),方法有很多,我这里介绍的方法并不是最方便的,但也确实可行。首先,在webapps目录下新建一应用目录:# cd /usr/local/tomcat/webapps

# mkdir app_test

# chmod 777 app_test

然后,你可在你熟悉的Windows操作系统的计算机内新建一个文本文件,保存在Windows计算机本地。文件名改为app_test.war。注意文件后缀也被改成war了。文件内容如下:

Context Path: /app_test

WAR or Directory URL: file:/usr/local/tomcat/webapps/app_test

从Windows计算机再次远程访问http://192.168.0.11:8080/,选择左边的“Tomcat Manager”,输入你在上一步决定的用户名和密码,进入应用管理页面。请注意下面有一个地方可以上载war 文件。请在本地计算机内选择上一步新建并保存的war文件,然后按下delopy按钮。

然后,在app_test目录下放一个test.jsp文件测试一下。从Windows计算机远程访问http://192.168.0.11:8080/app_test/test.jsp,一切正确顺利的话,你应该能看到其结果页面(注:有可能你需要重新启动一下Tomcat)。

为了开发时的便利,我设置了Tomcat的变更后自动重新读入(servlet reloading),这样Servlet 文件被改动后,不用重启动Tomcat就可看到其效果。

# vi /usr/local/tomcat/conf/server.xml

在以上注释的下面,增加如下一行内容:

===========server.xml change begin==========

=========== server.xml change end==========

为了开发时的便利,我还设置了Tomcat允许使用invoker servlet,这样你每次新增加一个servlet 文件后,无需在web.xml中增加其mapping,即可访问它。访问方法为http://192.168.0.11:8080/app_test/servlet/*。最后的*为servlet文件的完整的类名字(即包括包名字在内的类名字,the fully qualified class name of a Java class)。

# vi /usr/local/tomcat/conf/web.xml

找到如下的行,去掉头尾的注释,然后保存修改,重新启动Tomcat。

安装设置JK2,将Apache、Tomcat配置成分工合作

从https://www.doczj.com/doc/9d16481171.html,/site/binindex.cgi处下载最新版的适合的JK2的2进制文件mod_jk2-2.0.48.so(若无合适的2进制文件,也可下载源文件,参看其自带的文档,自己编译)。

将JK2拷贝到Apache2的modules目录

# cp mod_jk2-2.0.48.so /usr/local/apache2/modules/

修改Apache2的设定文件

# vi /usr/local/apache2/conf/httpd.conf

===========httpd.conf change begin==========

LoadModule jk2_module modules/mod_jk2-2.0.48.so

=========== httpd.conf change end==========

作成JK2的设定文件。作成名为workers2.properties的文本文件,将其保存在/usr/local/apache2/conf/内。文件内容如下:

===========workers2.properties create begin==========

[status:]

[uri:/jkstatus/*]

group=status:

[shm:]

disabled=1

[channel.socket:]

[ajp13:]

[uri:/app_test/*]

=========== workers2.properties create end==========

按Tomcat、Apache的顺序重新启动Tomcat、Apache后,你就可以无需输入端口8080访问Tomcat的jsp和servlet了。从而实现静态HTML页面有Apache处理,动态页面有Tomcat处理的分工合作的模式,发挥其各自的长处。

将Apache、Tomcat配置成自动启动

作成以下文件,文件名为tomcat_httpd。将其拷贝到/etc/rc.d/init.d/目录。

===========tomcat_httpd create begin==========

#! /bin/sh

# chkconfig: 2345 92 12

# description: Tomcat 5 and Apache 2

CATALINA_HOME=/usr/local/tomcat

export CATALINA_HOME

APACHE_HOME=/usr/local/apache2

export APACHE_HOME

JAVA_HOME=/usr/local/j2sdk1.4.2_02

export JAVA_HOME

PROFILEDIR=/var/run

case "$1" in

start)

if [ -f $PROFILEDIR/Tomcat5_Apache2 ]; then

echo "Running Tomcat5_Apache2"

else

if [ -f $CATALINA_HOME/bin/startup.sh ]; then

if [ -f $APACHE_HOME/bin/apachectl ]; then

"$CATALINA_HOME/bin/startup.sh"

echo "Startting Tomcat5"

sleep 3

echo "Startting Apache2"

$APACHE_HOME/bin/apachectl start

echo "."

https://www.doczj.com/doc/9d16481171.html,/~pengjian

touch $PROFILEDIR/Tomcat5_Apache2

else

echo "Apache File Not Founds "

fi

else

echo "Tomcat File Not Founds "

fi

fi

;;

stop)

if [ -f $PROFILEDIR/Tomcat5_Apache2 ]; then

if [ -f $CATALINA_HOME/bin/shutdown.sh ]; then

if [ -f $APACHE_HOME/bin/apachectl ]; then

"$CATALINA_HOME/bin/shutdown.sh"

echo "Stopping Tomcat5"

sleep 3

echo "Stopping Apache2"

$APACHE_HOME/bin/apachectl stop

rm $PROFILEDIR/Tomcat5_Apache2

else

echo "Apache File Not Founds "

fi

else

echo "Tomcat File Not Founds "

fi

else

echo "Not Running Tomcat5_Apache2 "

fi

;;

*)

echo "Usage: `basename $0` {start|stop}" 1>&2

exit 1

;;

esac

exit 0

===========tomcat_httpd create end==========

修改其文件模式,使其可执行

# chmod u+x /etc/rc.d/init.d/tomcat_httpd

将其加到自动执行列表里去

# /sbin/chkconfig --list

# /sbin/chkconfig --add tomcat_httpd

# /sbin/chkconfig --list

安装最新版本的Ant

下载后解压缩

# tar zxvf apache-ant-1.6.0-bin.tar.gz

拷贝到想安装的地方

# cp -R apache-ant-1.6.0 /usr/local/ant

设定环境参数(请参看并理解前面的“设置J2SDK和Tomcat的环境变量”)# vi /etc/profile

===========profile change begin==========

ANT_HOME=/usr/local/ant

pathmunge $ANT_HOME/bin after

EXPORT …(略)… ANT_HOME

===========profile change end==========

# source /etc/profile

删除Red Hat Linu x自带的旧版本的PostgreSQL

首先测试删除,以检查直接依存于PostgreSQL的包有哪一些

# rpm -e --test postgresql

error: Failed dependencies:

postgresql =7.3.2 is needed by (installed) postgresql-server-7.3.2-3 先删除依存于PostgreSQL的包

# rpm -e postgresql-server

然后删除PostgreSQL的包

# rpm -e postgresql

安装最新版本的PostgreSQL

从https://www.doczj.com/doc/9d16481171.html,/下载最新版的PostgreSQL,并解压缩之# tar zxvf postgresql-7.4.1.tar.gz

作成PostgreSQL相关的用户

# useradd postgres

# passwd postgres

作成PostgreSQL相关的目录

# mkdir /usr/local/pgsql

# chown postgres /usr/local/pgsql

# mkdir /usr/local/pgsql/data

# chown postgres /usr/local/pgsql/data

配置(我主要做的是日文项目,为了能简单地显示日文错误提示信息,所以我实际安装时还加了一个选项:--enable-nls=ja)

# ./configure --prefix=/usr/local/pgsql --with-java

编译、安装

# gmake

# gmake install

以postgres用户身份初次启动数据库

# su - postgres

$ /usr/local/pgsql/bin/initdb -D /usr/local/pgsql/data

$ /usr/local/pgsql/bin/postmaster -D /usr/local/pgsql/data >logfile 2>&1 &

$ /usr/local/pgsql/bin/createdb test

$ /usr/local/pgsql/bin/psql test (注:以\q命令可退出PostgreSQL的命令控制台)

$ exit

设置PostgreSQL相关的环境变量(请参看并理解前面的“设置J2SDK和Tomcat的环境变量”)# vi /etc/profile

===========profile change begin==========

POSTGRES_HOME=/usr/local/pgsql

PGLIB=$POSTGRES_HOME/lib

PGDATA=$POSTGRES_HOME/data

MANPATH=$MANPATH:$POSTGRES_HOME/man

LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$PGLIB

pathmunge $POSTGRES_HOME/bin after

EXPORT …(略)…MANPATH LD_LIBRARY_PATH

===========profile change end==========

# source /etc/profile

使用PostgreSQL安装包中的脚本,使PostgreSQL服务能自动启动

# cd /usr/public/pckg/postgresql-7.4.1

# cp contrib/start-scripts/linux /etc/rc.d/init.d/postgres

# chmod +x /etc/rc.d/init.d/postgres

# /sbin/chkconfig --add postgres

允许其它客户机的连接(若有多个用户使用该数据库,为了更大的安全性,建议将下面的trust 改为password或crypt等)

# vi /usr/local/pgsql/data/pg_hba.conf

=========== pg_hba.conf change begin==========

host all all 192.168.0.11 255.255.255.0 trust

=========== pg_hba.conf change end==========

# vi /usr/local/pgsql/data/postgresql.conf

=========== postgresql.conf change begin==========

#tcpip_socket = false

tcpip_socket = true

=========== postgresql.conf change end==========

追加开发用户和开发数据库(下面create database时我选的是日文EUC,请你改用中文) # groupadd postgres

# useradd -c pengjian -G postgres peng

# passwd peng

# psql test postgres

=========== PostgreSQL interactive terminal begin==========

# \du

# create group edis_dev;

# create user peng password 'peng' createdb in group edis_dev;

# create user hu password 'hu' createdb in group edis_dev;

# \du

# \l

# create database edis_peng owner=peng encoding='euc-jp';

# \i /usr/public/all_table_in_euc.sql

# \dt

# create database edis_hu owner=hu template=edis_peng encoding='euc-jp';

# alter table XXX owner to hu;

# \l

# \q

=========== PostgreSQL interactive terminal end==========

你可以从https://www.doczj.com/doc/9d16481171.html,/下载pgAdmin III,来测试Windows客户机的连接

若你按上面的操作安装的话,在/usr/local/pgsql/share/java/中会生成文件postgresql.jar,这是PostgreSQL的JDBC驱动,建议将其拷贝到每个Tomcat应用的WEB-INF/lib/目录中。你也可以从https://www.doczj.com/doc/9d16481171.html,/download.html下载PostgreSQL的JDBC驱动。

安装最新版本的Struts

从https://www.doczj.com/doc/9d16481171.html,/site/binindex.cgi处下载最新版的Struts。

解压缩

# tar zxvf jakarta-struts-1.1.tar.gz

将解压缩后得到的webapps子目录中的所有war拷贝到Tomcat的webapps子目录中,Tomcat 会将其自动展开配置到同名的webapp应用目录中(有可能需要重起Tomcat服务)。

# cd /usr/public/pckg/jakarta-struts-1.1/webapps/

# cp *.war /usr/local/tomcat/webapps

# cd /usr/local/tomcat/webapps

# ls

生成我自己的应用目录(app_peng)。改名拷贝后,稍等片刻(你也可重起Tomcat服务),Tomcat 会自动配置它。

# cp struts-blank.war app_peng.war

# chmod 777 app_peng

安装最新版本的iBatis

从https://www.doczj.com/doc/9d16481171.html,/common/download.html处下载最新版的iBatis和刘涛翻译的中文开发者指南。

安装最新版本的PHP(略)

安装最新版本的MySQL(略)

安装最新版本的Oracle(略)

eoLinker-API_Shop_猫咪大全_API接口_Java调用示例代码

eoLinker-API Shop 猫咪大全 Java调用示例代码 猫咪大全 可查询猫咪相关信息,包括品种介绍、产地、性格、寿命、价格等信息,带图片。 该产品拥有以下APIs: 1.关键字获取猫类 2.获取猫类列表 3.获取猫类详细信息 注意,该示例代码仅适用于https://www.doczj.com/doc/9d16481171.html,网站下API使用该产品前,您需要通过https://https://www.doczj.com/doc/9d16481171.html,/#/api/detail/?productID=193申请API服务 1.关键字获取猫类 package net.apishop.www.controller; import java.io.DataOutputStream; import java.io.IOException; import java.io.InputStream; import java.io.UnsupportedEncodingException; import https://www.doczj.com/doc/9d16481171.html,.HttpURLConnection; import https://www.doczj.com/doc/9d16481171.html,.MalformedURLException; import https://www.doczj.com/doc/9d16481171.html,.URL; import https://www.doczj.com/doc/9d16481171.html,.URLEncoder; import java.util.HashMap; import java.util.Map; import com.alibaba.fastjson.JSONObject; /** * httpUrlConnection访问远程接口工具 */ public class Api { /** * 方法体说明:向远程接口发起请求,返回字节流类型结果 * param url 接口地址 * param requestMethod 请求方式 * param params 传递参数重点:参数值需要用Base64进行转码 * return InputStream 返回结果 */ public static InputStream httpRequestToStream(String url, String re questMethod, Map params) {

A20_Android开发手册_V1[1].0

C o n f i d e n t i a l A20Android 开发手册 V 1.0 2013-02013-03 3-15

C o n f i d e n t i a l Revision History Version Date Section/Page Changes 1.0 2013-03-15 初始版本

C o n f i d e n t i a l 目录 一、A20概述 (4) 1.1A20主控介绍.....................................................................................................................51.2外围设备介绍.....................................................................................................................51.3软件资源介绍.....................................................................................................................5二、建立开发环境. (5) 2.1硬件资源............................................................................................................................62.2软件资源. (6) 2.2.1安装JDK (ubuntu12.04).....................................................................................62.2.2安装平台支持软件(ubuntu12.04).....................................................................62.2.3安装编译工具链(ubuntu12.04).........................................................................62.2.4安装phoenixSuit (windows xp )........................................................................72.2.5其他软件(windows xp ).. (7) 三、源码下载 (8) 3.1wing 源码下载....................................................................................................................83.2仓库的目录树.. (8) 3.2.1android 目录树.........................................................................................................83.2.2lichee 目录结构.. (9) 3.2.2.1buildroot 目录结构........................................................................................93.2.2.2linux-3.3目录结构......................................................................................103.2.2.3u-boot 目录结构..........................................................................................113.2.2.4tools 目录结构............................................................................................123.2.2.5boot 目录结构 (12) 四、编译和打包 (13) 4.1源码编译 (13) 4.1.1lichee 源码编译......................................................................................................134.1.2android 源码编译...................................................................................................134.2打包固件.. (13) 4.2.1完全打包...............................................................................................................134.2.2局部打包 (14) 五、固件烧写 (14) 5.1使用PhoenixSuit 烧写固件.............................................................................................145.2使用fastboot 更新系统 (14) 5.2.1进入fastboot 模式.................................................................................................145.2.2fastboot 命令使用.. (15) 六、recovery 功能使用 (15) 6.1键值的查看......................................................................................................................156.2按键选择..........................................................................................................................166.3功能使用..........................................................................................................................16七、调试 (17) 7.1调试apk...........................................................................................................................177.2调试linux 内核. (17)

WebApi系列~通过HttpClient来调用WebApi接口

回到目录 HttpClient是一个被封装好的类,主要用于Http的通讯,它在.net,java,oc中都有被实现,当然,我只会.net,所以,只讲.net中的HttpClient去调用Web Api的方法,基于api项目的特殊性,它需要有一个完全安全的环境,所以,你的api控制器看起来有点特别,只有5个方法,而且都是标准的http方法,我觉得这种设计很不错,很清晰,而且为了实现安全性,它不支持使用传统的表单数据,取而代之的是FromBody参数,它指拿HttpRequestMessage里参数,而不是所有的Request数据,这是基于安全方面的考虑。一Api接口参数的标准性 Get方式,可以有多个重载,有多个参数 POST方式,只能有一个参数,并且用[FromBody]约束,如果有多个参数,需要以对象的方式进行传递 Put方式,只能有两个参数,其中一个是通过Request.QueryString方式进行传递的,作为要更新对象的主键,别一个是[FromBody]字段,也是一个字段,如果多个字段需要把它封装成对象 标准接口如图 二调用方,参数的标准性 在客户端进行接口调用时,我们以网页端为例,看一下网页端进行ajax跨域请求的代码

Get方式 $.ajax({ url: "http://localhost:52824/api/register", type: "GET", success: function (data) { console.log("json:" + data); } }); Post方式 $.ajax({ url: "http://localhost:52824/api/register", type: "POST", data: { '': '1' },//这里键名称必须为空,多个参数请传对象,api端参数名必须为value success: function (data) { console.log("post:" + data); } }); 三在控制台中实现Get方式获取接口数据(只有异步实现) ///

/// HttpClient实现Get请求 /// static async void dooGet() { string url = "http://localhost:52824/api/register?id=1&leval=5"; //创建HttpClient(注意传入HttpClientHandler) var handler = new HttpClientHandler() { AutomaticDecompression = DecompressionMethods.GZip }; using (var http = new HttpClient(handler)) { //await异步等待回应 var response = await http.GetAsync(url);

Removed_思科设备telnet登陆方式配置实验

一 telnet 你的路由器地址然后输入密码,一般为CISCO,然后ENA,输入密码CISCO 这样就进到了特权模式了,CONF T 回车进入配置模式,想配置什么就在这里配置好了。顺便给你点命令吧思科命令大全Access-enable 允许路由器在动态访问列表中创建临时访问列表入口Access-group 把访问控制列表(ACL)应用到接口上Access-list 定义一个标准的IP ACL Access-template 在连接的路由器上手动替换临时访问列表入口Appn 向APPN 子系统发送命令Atmsig 执行ATM 信令命令 B 手动引导操作系统Bandwidth 设置接口的带宽Banner motd 指定日期信息标语Bfe 设置突发事件手册模式Boot system 指定路由器启动时加载的系统映像Calendar 设置硬件日历Cd 更改路径Cdp enable 允许接口运行CDP 协议Clear 复位功能Clear counters 清除接口计数器Clear interface 重新启动接口上的件逻辑Clockrate 设置串口硬件连接的时钟速率,如网络接口模块和接口处理器能接受的速率Cmt 开启/关闭FDDI 连接管理功能Config-register 修改配置寄存器设置Configure 允许进入存在的配置模式,在中心站点上维护并保存配置信息Configure memory 从NVRAM 加载配置信息Configure terminal 从终端进行手动配置Connect 打开一个终端连接Copy 复制配置或映像数据Copy flash tftp 备份系统映像文件到TFTP 服务器Copy running-config startup-config 将RAM 中的当前配置存储到NVRAM Copy running-config tftp 将RAM 中的当前配置存储到网络TFTP 服务器上Copy tftp flash 从TFTP 服务器上下载新映像到Flash Copy tftp running-config 从TFTP 服务器上下载配置文件Debug 使用调试功能Debug dialer 显示接口在拨什么号及诸如此类的信息Debug ip rip 显示RIP 路由选择更新数据 Debug ipx routing activity 显示关于路由选择协议(RIP)更新数据包的信息Debug ipx sap 显示关于SAP(业务通告协议)更新数据包信息Debug isdn q921 显示在路由器 D 通道ISDN 接口上发生的数据链路层(第 2 层)的访问过程Debug ppp 显示在实施PPP 中发生的业务和交换信息Delete 删除文件Deny 为一个已命名的IP ACL 设置条件Dialer idle-timeout 规定线路断开前的空闲时间的长度Dialer map 设置一个串行接口来呼叫一个或多个地点Dialer wait-for-carrier-time 规定花多长时间等待一个载体Dialer-group 通过对属于一个特定拨号组的接口进行配置来访问控制Dialer-list protocol 定义一个数字数据接受器(DDR)拨号表以通过协议或ACL 与协议的组合来控制控制拨号Dir 显示给定设备上的文件Disable 关闭特许模式Disconnect 断开已建立的连接Enable 打开特许模式Enable password 确定一个密码以防止对路由器非授权的访问Enable password 设置本地口令控制不同特权级别的访问Enable secret 为enable password 命令定义额外一层安全性(强制安全,密码非明文显示) Encapsulation frame-relay 启动帧中继封装Encapsulation novell-ether 规定在网络段上使用的Novell 独一无二的格式Encapsulation PPP 把PPP 设置为由串口或ISDN 接口使用的封装方法Encapsulation sap 规定在网络段上使用的以太网802.2 格式Cisco 的密码是sap End 退出配置模式Erase 删除闪存或配置缓存Erase startup-config 删除NVRAM 中的内容Exec-timeout 配置EXEC 命令解释器在检测到用户输入前所等待的时间Exit 退出所有配置模式或者关闭一个激活的终端会话和终止一个EXEC Exit 终止任何配置模式或关闭一个活动的对话和结束EXEC format 格式化设备Frame-relay local-dlci 为使用帧中继封装的串行线路启动本地管理接口(LMI)Help 获得交互式帮助系统History 查看历史记录Hostname 使用一个主机名来配置路由器,该主机名以提示符或者缺省文件名的方式使用Interface 设置接口类型并且输入接口配置模式Interface 配置接口类型和进入接口配置模式Interface serial 选择接口并且输入接口配置模式Ip access-group 控制对一个接口的访问Ip address 设定接口的网络逻辑地址Ip address 设置

java发送http的get、post请求

package wzh.Http; import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.io.PrintWriter; import https://www.doczj.com/doc/9d16481171.html,.URL; import https://www.doczj.com/doc/9d16481171.html,.URLConnection; import java.util.List; import java.util.Map; public class HttpRequest { /** * 向指定URL发送GET方法的请求 * * @param url * 发送请求的URL * @param param * 请求参数,请求参数应该是name1=value1&name2=value2 的形式。 * @return URL 所代表远程资源的响应结果 */ public static String sendGet(String url, String param) { String result = ""; BufferedReader in = null; try { String urlNameString = url + "?" + param; URL realUrl = new URL(urlNameString); // 打开和URL之间的连接 URLConnection connection = realUrl.openConnection(); // 设置通用的请求属性 connection.setRequestProperty("accept", "*/*"); connection.setRequestProperty("connection", "Keep-Alive"); connection.setRequestProperty("user-agent", "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1;SV1)"); // 建立实际的连接 connection.connect(); // 获取所有响应头字段 Map> map = connection.getHeaderFields(); // 遍历所有的响应头字段 for (String key : map.keySet()) { System.out.println(key + "--->" + map.get(key)); } // 定义BufferedReader输入流来读取URL的响应 in = new BufferedReader(new InputStreamReader(

Shiro-用户手册

Shiro用户手册 Shiro架构介绍 一、什么是Shiro Apache Shiro是一个强大易用的Java安全框架,提供了认证、授权、加密和会话管理等功 能: * 认证-用户身份识别,常被称为用户登录” ?授权-访问控制; * 密码加密-保护或隐藏数据防止被偷窥; * 会话管理-每用户相关的时间敏感的状态。 对于任何一个应用程序,Shiro都可以提供全面的安全管理服务。并且相对于其他安全框架, Shiro要简单的多。 Shiro的架构介绍 Subject :即当前操作用户”但是,在Shiro中,Subject这一概念并不仅仅指人,也可以是第三方进程、后台帐户(Daemon Accou nt )或其他类似事物。它仅仅意味着当前跟软件

交互的东西”。但考虑到大多数目的和用途,你可以把它认为是Shiro的用户”概念。Subject代表了当前用户的安全操作,SecurityManager则管理所有用户的安全操作。 SecurityManager :它是Shiro 框架的核心,典型的Facade 模式,Shiro 通过SecurityManager 来管理内部组件实例,并通过它来提供安全管理的各种服务。 Realm : Realm充当了Shiro与应用安全数据间的桥梁”或者连接器”。也就是说,当对用户执行认证(登录)和授权(访问控制)验证时,Shiro会从应用配置的Realm中查找用户及其权限信息。 从这个意义上讲,Realm实质上是一个安全相关的DAO :它封装了数据源的连接细节,并 在需要时将相关数据提供给Shiro。当配置Shiro时,你必须至少指定一个Realm,用于认 证和(或)授权。配置多个Realm是可以的,但是至少需要一个。 Shiro内置了可以连接大量安全数据源(又名目录)的Realm,如LDAP、关系数据库 (JDBC )、 类似INI的文本配置资源以及属性文件等。如果缺省的Realm不能满足需求,你还可以插 入代表自定义数据源的自己的Realm实现。 Shiro完整架构图:

Cisco Packet Tracer服务器配置_邮件传送_ftp_web_email_dns_dhcp图解

一、实验环境 Cisco Packet Tracter 5.3版软件 二、实验目的 1、DHCP服务配置及测试 2、DNS服务配置及测试 3、WEB服务配置及测试 4、FTP服务配置及测试 5、电子邮件服务配置及测试 6、远程终端服务配置及测试 三、实验内容(包括主要程序流程和说明,程序分工说明) 1)网络服务逻辑模式设计图 图(一) 图(一)共由五个服务器(WEB服务器、MAIL服务器、FTP服务器、DNS服务器、DHCP 服务器)、一个交换机(2960-24)、两个客户机(PC0、PC1)和7根双绞线组成,连接状态正常! 2)五台服务器IP配置 分别单击服务器(DHCP、DNS、FTP、MAIL、WEB)——单击Desktop——单击IP Configuration——设置IP Address(Subnet Mask为默认值)

3)DHCP服务器配置 配置DHCP服务器,关闭在此服务器上的DNS、FTP、MAIL、WEB服务(Service),其他服务不变,操作过程如下: 先单击Config,在单击左侧DHCP,如图:

图(二) —————————————————————————————————————Service(服务状态):On(开) DNS 服务器地址:192.168.1.2 (设置要访问的DNS服务器地址) Start IP Address(开始IP地址):192.168.1.6 (设置本192.168.1.0网段客户端自动 申请到的IP地址尾数从6开始) Subnet Mask(默认子网网关): Maximum number of Users(子网最大客户端量):50 TFTP Server():0.0.0.0 (默认值) —————————————————————————————————————设置好后,单击Save(保存)。 单击左侧DNS,DNS Service设置为 off,其他不变:

基于JAVA的新闻数据接口调用代码实例

基于JA V A的新闻数据接口调用代码实例 代码描述:基于JA V A的新闻数据接口调用代码实例 代码平台:聚合数据 import java.io.BufferedReader; import java.io.DataOutputStream; import java.io.IOException; import java.io.InputStream; import java.io.InputStreamReader; import java.io.UnsupportedEncodingException; import https://www.doczj.com/doc/9d16481171.html,.HttpURLConnection; import https://www.doczj.com/doc/9d16481171.html,.URL; import https://www.doczj.com/doc/9d16481171.html,.URLEncoder; import java.util.HashMap; import java.util.Map; import net.sf.json.JSONObject; /** *新闻调用示例代码-聚合数据 *在线接口文档:https://www.doczj.com/doc/9d16481171.html,/docs/138 **/ public class JuheDemo { public static final String DEF_CHATSET = "UTF-8"; public static final int DEF_CONN_TIMEOUT = 30000; public static final int DEF_READ_TIMEOUT = 30000; public static String userAgent = "Mozilla/5.0 (Windows NT 6.1) Appl eWebKit/537.36 (KHTML, like Gecko) Chrome/29.0.1547.66 Safari/537.36"; //配置您申请的KEY public static final String APPKEY ="*************************"; //1.新闻检索 public static void getRequest1(){ String result =null; String url ="https://www.doczj.com/doc/9d16481171.html,/onebox/news/query";//请求接口地址 Map params = new HashMap();//请求参数 params.put("q","");//需要检索的关键字,请UTF8 URLENCODE params.put("key",APPKEY);//应用APPKEY(应用详细页查询)

java_swing手册

PACHAGE | 内 容 -----------------|------------ ------------------- javax.swing | 最常用的pachage,包含了各种swing组件的类 javax.swing.border | 包含与swing组件 外框有关的类 javax..swing.colorchooser | 针对swing调色盘组件(JColorChooser)所设计的类 javax.swing.event | 处理由swing组件 产生的事件,有别于AWT事件 javax.swing.filechooser | 包含针对swing文件选择对话框(JFileChooser)所设计的类 ----------------------------- ----------------- javax.swing.plaf | 处理swing组件外 观的相关类 javax.swing.plaf.basic | javax.swing.plaf.metal | javax.swing.plaf.multi | ----------------------------- ----------------- javax.swing.table | 针对swing表格组 件(JTable)所设计的类 ----------------------------- ----------------- javax.swing.text | 包含与swing文字 组件相关的类 javax.swing.text.html | javax.swing.text.html.parser | javax.swing.text.rtf | ----------------------------- ----------------- javax.swing.tree | 针对swing树关元 件(JTree)所设计的类 javax.swing.undo | 提供swing文字组 件Redo或Undo的功能

思科路由器配置命令和方法

第一章:路由器配置基础 一、基本设置方式 一般来说,可以用5种方式来设置路由器: 1.Console口接终端或运行终端仿真软件的微机; 2.AUX口接MODEM,通过电话线与远方的终端或运行终端仿真软件的微机相连;3.通过Ethernet上的TFTP服务器; 4.通过Ethernet上的TELNET程序; 5.通过Ethernet上的SNMP网管工作站。 但路由器的第一次设置必须通过第一种方式进行,此时终端的硬件设置如下: 波特率:9600 数据位:8 停止位:1 奇偶校验: 无 二、命令状态 1. router> 路由器处于用户命令状态,这时用户可以看路由器的连接状态,访问其它网络和主机,但不能看到和更改路由器的设置内容。 2. router# 在router>提示符下键入enable,路由器进入特权命令状态router#,这时不但可以执行所有的用户命令,还可以看到和更改路由器的设置内容。 3. router(config)# 在router#提示符下键入configure terminal,出现提示符router(config)#,此时路由器处于全局设置状态,这时可以设置路由器的全局参数。 4. router(config-if)#; router(config-line)#; router(config-router)#;… 路由器处于局部设置状态,这时可以设置路由器某个局部的参数。 5. > 路由器处于RXBOOT状态,在开机后60秒内按ctrl-break可进入此状态,这时路由器不能完成正常的功能,只能进行软件升级和手工引导。 设置对话状态 这是一台新路由器开机时自动进入的状态,在特权命令状态使用SETUP命令也可进入此状态,这时可通过对话方式对路由器进行设置。 三、设置对话过程 显示提示信息 全局参数的设置 接口参数的设置 显示结果 利用设置对话过程可以避免手工输入命令的烦琐,但它还不能完全代替手工设置,一些特殊的设置还必须通过手工输入的方式完成。 进入设置对话过程后,路由器首先会显示一些提示信息: --- System Configuration Dialog --- At any point you may enter a question mark '?' for help. Use ctrl-c to abort configuration dialog at any prompt. Default settings are in square brackets '[]'. 这是告诉你在设置对话过程中的任何地方都可以键入“?”得到系统的帮助,按ctrl-c可以退

Java实现发送Http请求

Java实现发送Http请求 JDK中提供了一些对无状态协议请求(HTTP)的支持: 首先让我们先构建一个请求类(HttpRequester)。 该类封装了JAVA实现简单请求的代码,如下: import java.io.BufferedReader; import java.io.IOException; import java.io.InputStream; import java.io.InputStreamReader; import https://www.doczj.com/doc/9d16481171.html,.HttpURLConnection; import https://www.doczj.com/doc/9d16481171.html,.URL; import java.nio.charset.Charset; import java.util.Map; import java.util.Vector; /** * HTTP请求对象 * * @author YYmmiinngg */ public class HttpRequester { private String defaultContentEncoding; public HttpRequester() { this.defaultContentEncoding = Charset.defaultCharset().name(); }

/** * 发送GET请求 * * @param urlString * URL地址 * @return 响应对象 * @throws IOException */ public HttpRespons sendGet(String urlString) throws IOException { return this.send(urlString, "GET", null, null); } /** * 发送GET请求 * * @param urlString * URL地址 * @param params * 参数集合 * @return 响应对象 * @throws IOException

JavaPrintService_Java打印API_用户手册_中文版

目录 第一章介绍 Java平台打印的历史 JDK 1.3 JDK 1.2 JDK 1.1 Java Print Service API能做什么 Java Print Service 构架 javax.print包 发现打印服务 指定打印数据格式 创建打印工作 javax.print.event包 应用程序如何使用JPS 一个基本的例子 第二章属性 属性的类别和值 属性角色 属性集 如何指定属性 标准属性 OrientationRequested Copies Media MediaSize MediaPrintableArea Destination SheetCollate Sides Fidelity 使用JPS属性 第三章指定文档类型 用户格式打印数据 预定义数据格式的MIME类型 文本数据 页面描述语言文档 图像数据 自适应打印数据 表示类 字符编码的重要性 服务格式打印数据 怎样使用DocFlavor 第四章打印及流化文档

比较StreamPrintService与PrintService 定位服务 发现打印服务 发现流打印服务 获得一个打印工作 创建DOC 注册事件 打印服务事件 打印工作事件 PrintJobAttributeListener PrintJobListener 提交打印工作 向打印机提交打印工作 向流提交打印工作 打印服务提供商 第五章打印及流化2D图像 使用打印工作打印或流化图像 打印2D图像 流化2D图像 使用服务格式数据 打印服务格式数据 流化服务格式打印数据 示例:PrintPS.java 示例:PrintGIFtoStream.java 示例:Print2DPrinterJob.java 示例:Print2DGraphics.java 示例:Print2DtoStream.java 示例:PrintGIF.java Java Print Service 词汇表

cisco AAA认证服务器及设备配置

cisco AAA认证服务器及设备配置 AAA代表Authentication、Authorization、Accounting,意为认证、授权、记帐,其主要目的是管理哪些用户可以访问服务器,具有访问权的用户可以得到哪些服务,如何对正在使用网络资源的用户进行记帐。 1、认证:验证用户是否可以获得访问权限——“你是谁?” 2、授权:授权用户可以使用哪些资源——“你能干什么?” 3、记帐:记录用户使用网络资源的情况——“你干了些什么?” 好的,简单的了解理论知识后,接下来我们还是以实验的方式来进行讲解: 为网络提供AAA服务的,主要有TACACS+和RADIUS协议,我们主要介绍是TACACS+协议,因为它运行在TCP协议基础之上,更适合大型网络,特别是融合型网络 一、实验拓扑介绍 该实验主要完成R1路由通过ACS服务器实现AAA认证,包括验证、授权和记帐,同时还包括PPP验证和计时通过cisco ACS实验 二、安装cisco ACS 1、硬软件要求 硬件:Pentium IV 处理器, 1.8 GHz 或者更高 操作系统:Windows 2000 Server

Windows 2000 Advanced Server (Service Pack 4) Windows Server 2003,Enterprise Edition or Standard Edition (Service Pack 1) 内存:最小1GB 虚拟内存:最小1GB 硬盘空间:最小1GB可用空间,实际大小根据日志文件的增长,复制和备份的需求而定。 浏览器:Microsoft Internet Explorer 6 或者更高版本 JAVA运行环境:Sun JRE 1.4.2_04 或更高版本 网络要求: 在CISCO IOS 设备上为了全面的支持TACACS+ 和RADIUS,AAA 客户端必须运行Cisco IOS 11.1 或者更高的版本。 非CISCO IOS 设备上必须用TACACS+,RADIUS或者两者一起配置。 运行ACS的主机必须能ping通所有的AAA客户端。 2、安装方法(我们用的版本是4.0版本) 打开ACS安装程序文件夹,选中setup 双击。进入安装向导,根据提示进行安装,基本为默认设置 3、安装完成后的访问 在运行ACS的主机上,通过桌面上的ACS Admin 网页图标,可以访问ACS 的web格式的管理台。也可以通过网页浏览器输入地址:http://127.0.0.1:2002来访问ACS。 注: Windows Xp不支持cisco ACS,在此笔者是在虚机中的windows2003sever下安装的 ACS安装完成后,一定要安装JAVA平台,否则该ACS将不能正常使用,笔者在此安装的是jre-6u12-windows-i586-p-s.exe,版本为JRE 版本 1.6.0_12 Java HotSpot(TM) 三、ACS的配置 1、设置ACS管理员帐号 Step 1>点击ACS界面左边的Administration control 按钮,然后点击Administrator control界面中的Add Administrator

使用JAVA蓝牙无线通讯技术API

使用Java蓝牙无线通讯技术API(第一部分-API概览) 蓝牙是一种低成本、短距离的无线通信技术。对于那些希望创建个人局域网(PANs)的人们来说,蓝牙技术已经越来越流行了。每个个人局域网都在独立设备的周围被动态地创建,并且为蜂窝式电话和PDA等设备提供了自动连接和即时共享数据的能力。 为了在Java平台上开发支持蓝牙技术的软件,JCP定义了JSR82标准--Java蓝牙无线技术APIs(JABWT)。 在这篇文章中,我将介绍一些关于蓝牙技术的背景,概述一下支持蓝牙技术的MIDlet 应用程序的典型要素,然后介绍给你核心的Java蓝牙APIs。最后我们展示一些代码来演示如何使用这些APIs。 实际上JSR82定义了两个独立的可选包:核心蓝牙API和对象交换(OBEX)API。这篇文章将对这两个中更为普遍的部分--核心蓝牙包javax.bluetooth进行详细地阐述,而OBEX API(对象交换),我们留到以后去讨论。 1、背景 篮牙技术由蓝牙兴趣小组发展,其包括: .无线电技术 .协议栈 .互操作性profiles 蓝牙无线电技术基于在工业、科学以及医学(ISM)上公用的2.45GHz开放频段,这一频段无需授权并全球通用。当蓝牙设备互相连接时,他们将组成一个微微网(piconet),即以一个主设备和最大7个从设备的形式动态创建网络。蓝牙也支持piconet网之间的连接:当一个piconet中的主设备成为另一个piconet的从设备时,piconet与piconet间将形成桥接。 蓝牙协议栈提供了一组的高层协议和API以完成发现服务和模拟串行I/O,还有一个关于包分割和重组的低层协议以及多路技术协议和质量服务。蓝牙互操作性profiles--不要与J2ME profiles搞混--它是用来描述跨平台互操作性和一致性需求的。蓝牙互操作性profiles 包括三方面内容:通用访问profile(GAP)定义了设备管理功能性;服务发现应用profiles 定义了服务发现方面的内容,串口profiles定义了互操作设备和模拟串口电缆的能力。你可以通过蓝牙规范(Bluetooth specification)学习这些和其它的profiles。 蓝牙栈包含一个软件栈来映射一个固件栈(firmware),由图1所示:

JavaShop安装手册

JavaShop安装手册 Version: 2.0 Public date: 2010-09-28 All right reserved https://www.doczj.com/doc/9d16481171.html,

1安装条件 ●操作系统不限 ●JDK:1.5或更高版本 ●Tomcat5.5或更高版本 ●Mysql5.0或更高版本 2安装准备 2.1获取javashop.war 包 请到https://www.doczj.com/doc/9d16481171.html,上获取最新安装包 2.2停用tomcat的reload 在安装过程中需要动态修改数据库配置文件,所以要禁止tomcat自动reload。打开\conf\server.xml文件,找到

2.4注意事项: ●Tomcat路径不能有空格。 ●数据库编码必须为utf-8。 3安装参数配置3.1.1许可协议 点击“下一步”

3.1.2配置数据库信息 输入相应参数后点击“测试连接”,如果连接成功会提示如上图。点击“下一步”

3.1.3配置域名及管理员信息 点击“开始安装”进行安装,安装过程可能需要几分钟时间,耐心等待之后的成功安装成功界面:

相关主题
文本预览
相关文档 最新文档