真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

java執(zhí)行頁(yè)面代碼,java直接執(zhí)行代碼

java中如何運(yùn)行HTML代碼

Java要運(yùn)行html代碼,需要運(yùn)行在服務(wù)器端,也就是servlet容器中,經(jīng)過(guò)容器編譯解析,返回html靜態(tài)內(nèi)容,示例如下:

站在用戶的角度思考問題,與客戶深入溝通,找到白朗網(wǎng)站設(shè)計(jì)與白朗網(wǎng)站推廣的解決方案,憑借多年的經(jīng)驗(yàn),讓設(shè)計(jì)與互聯(lián)網(wǎng)技術(shù)結(jié)合,創(chuàng)造個(gè)性化、用戶體驗(yàn)好的作品,建站類型包括:網(wǎng)站設(shè)計(jì)制作、成都網(wǎng)站建設(shè)、企業(yè)官網(wǎng)、英文網(wǎng)站、手機(jī)端網(wǎng)站、網(wǎng)站推廣、域名注冊(cè)、網(wǎng)站空間、企業(yè)郵箱。業(yè)務(wù)覆蓋白朗地區(qū)。

在servlet里面寫就可以了

引入一系列包

import java.io.IOException;

import java.io.PrintWriter;

import javax.servlet.ServletException;

import javax.servlet.ServletRequest;

import javax.servlet.ServletResponse;

import javax.servlet.http.HttpServlet;

import javax.servlet.http.HttpServletRequest;

import javax.servlet.http.HttpServletResponse;

import java.io.*;

public class Servlet1 extends HttpServlet {

public void doGet(ServletRequest req,ServletResponse res)throws ServletException, IOException{try{PrintWriter pw=res.getWriter();//在瀏覽器輸出需要

pw.println("scriptscript");}catch(exception e){="" e.printstacktrace();="" 為發(fā)現(xiàn)調(diào)試錯(cuò)誤}}}=""

java Web 啟動(dòng)時(shí)自動(dòng)執(zhí)行代碼的幾種方式

Web容器啟動(dòng)后執(zhí)行代碼的幾種方式

其執(zhí)行順序?yàn)椋?/p>

4===5===1===2===3

即指定init-method的Bean開始執(zhí)行

接著實(shí)現(xiàn)spring的Bean后置處理器開始執(zhí)行

然后是Servlet的監(jiān)聽器執(zhí)行

再接下來(lái)是Servlet的過(guò)濾器執(zhí)行

最后才是Servlet執(zhí)行

1、實(shí)現(xiàn)Servlet監(jiān)聽器接口ServletContextListener

[java] view plain copy

public class InitListener implements ServletContextListener {

@Override

public void contextDestroyed(ServletContextEvent context) {

}

@Override

public void contextInitialized(ServletContextEvent context) {

// 上下文初始化執(zhí)行

System.out.println("================[ServletContextListener]自動(dòng)加載啟動(dòng)開始.");

SpringUtil.getInstance().setContext(

span style="white-space:pre" /spanWebApplicationContextUtils.getWebApplicationContext(arg0.getServletContext())

span style="white-space:pre" /span);

}

}

然后在web.xml文件配置該監(jiān)聽器

[html] view plain copy

listener

listener-classcom.test.init.InitListener/listener-class

/listener

2、實(shí)現(xiàn)Servlet的過(guò)濾器Filter

[html] view plain copy

public class InitFilter implements Filter {

@Override

public void destroy() {

}

@Override

public void doFilter(ServletRequest arg0, ServletResponse arg1, FilterChain arg2) throws IOException,

ServletException {

}

@Override

public void init(FilterConfig config) throws ServletException {

System.out.println("================[Filter]自動(dòng)加載啟動(dòng)開始.");

// 讀取Spring容器中的Bean[此時(shí)Bean已加載,可以使用]

//寫啟動(dòng)需要執(zhí)行的代碼

System.out.println("================[Filter]自動(dòng)加載啟動(dòng)結(jié)束.");

}

}

然后在web.xml文件配置過(guò)濾器即可

[html] view plain copy

filter

filter-nameInitFilter/filter-name

filter-classcom.test.init.InitFilter/filter-class

/filter

filter-mapping

filter-nameInitFilter/filter-name

url-pattern//url-pattern

/filter-mapping

3、編寫一個(gè)Servlet,在web.xml里面配置容器啟動(dòng)后執(zhí)行即可

[html] view plain copy

public class InitServlet extends HttpServlet {

/**

*/

private static final long serialVersionUID = 1L;

@Override

public void init(ServletConfig config) {

try {

super.init();

} catch (ServletException e) {

e.printStackTrace();

}

System.out.println("================[Servlet]自動(dòng)加載啟動(dòng)開始.");

// 讀取Spring容器中的Bean[此時(shí)Bean已加載,可以使用]

//執(zhí)行想要的代碼

System.out.println("================[Servlet]自動(dòng)加載啟動(dòng)結(jié)束.");

}

}

然后在web.xml文件配置該Servlet的啟動(dòng)方式為:容器啟動(dòng)后執(zhí)行

servlet

servlet-nameInitServlet/servlet-name

servlet-classcom.test.init.InitServlet/servlet-class

init-param

param-nameusername/param-name

param-valuetest/param-value

/init-param

!-- 此處指定加載順序?yàn)?,表明還有優(yōu)先級(jí)更高的Servlet要先執(zhí)行 --

load-on-startup2/load-on-startup

/servlet

servlet-mapping

servlet-nameInitServlet/servlet-name

url-pattern//url-pattern

/servlet-mapping

關(guān)于啟動(dòng)后執(zhí)行,由load-on-startup指定:

(1)當(dāng)值為0或者大于0時(shí),表示容器在應(yīng)用啟動(dòng)時(shí)就加載這個(gè)servlet。值越小,啟動(dòng)優(yōu)先級(jí)越高;

(2)當(dāng)是一個(gè)負(fù)數(shù)時(shí)或者沒有指定時(shí),表示該servlet被調(diào)用時(shí)才加載。

4、如果你使用Spring IOC作為Bean管理容器,那么可以指定init-method其中init-method表示bean加載成功后,立即執(zhí)行某個(gè)方法。配置如下:start為要執(zhí)行的方法名稱

[html] view plain copy

!-- service --

bean id="shopService" class="com.test.teach.service.ShopService" span style="color:#33ffff;"init-method="start"/span

property name="shopDao" ref="shopDao" /

/bean

運(yùn)行時(shí)可調(diào)用瀏覽器打開一個(gè)網(wǎng)頁(yè),網(wǎng)頁(yè)地址在代碼中的java代碼怎么寫?

網(wǎng)頁(yè)地址在代碼中的java代碼寫法如下:

package com.test;

import java.lang.reflect.Method;

//實(shí)現(xiàn)打開瀏覽器并跳到指定網(wǎng)址的類

public class BareBonesBrowserLaunch {

public static void openURL(String url) {

try {

browse(url);

} catch (Exception e) {

}

}

private static void browse(String url) throws Exception {

//獲取操作系統(tǒng)的名字

String osName = System.getProperty("os.name", "");

if (osName.startsWith("Mac OS")) {

//蘋果的打開方式

Class fileMgr = Class.forName("com.apple.eio.FileManager");

Method openURL = fileMgr.getDeclaredMethod("openURL", new Class[] { String.class });

openURL.invoke(null, new Object[] { url });

} else if (osName.startsWith("Windows")) {

//windows的打開方式。

Runtime.getRuntime().exec("rundll32 url.dll,FileProtocolHandler " + url);

} else {

// Unix or Linux的打開方式

String[] browsers = { "firefox", "opera", "konqueror", "epiphany", "mozilla", "netscape" };

String browser = null;

for (int count = 0; count browsers.length browser == null; count++)

//執(zhí)行代碼,在brower有值后跳出,

//這里是如果進(jìn)程創(chuàng)建成功了,==0是表示正常結(jié)束。

if (Runtime.getRuntime().exec(new String[] { "which", browsers[count] }).waitFor() == 0)

browser = browsers[count];

if (browser == null)

throw new Exception("Could not find web browser");

else

//這個(gè)值在上面已經(jīng)成功的得到了一個(gè)進(jìn)程。

Runtime.getRuntime().exec(new String[] { browser, url });

}

}

}

//主方法 測(cè)試類

public static void main(String[] args) {

String url = ""; ? ? ?

BareBonesBrowserLaunch.openURL(url);

}

如何用java執(zhí)行指定頁(yè)面中的js代碼

要在java中執(zhí)行js代碼,首先明白,java不支持瀏覽器本身的方法。支持自定義的js方法,否則會(huì)報(bào)錯(cuò)

先新建一個(gè)js文件:jsss.js

內(nèi)容如下:

function aa(a,b){ ? ?return a+b;

}

然后在java中寫代碼:

public class ZipTest {

public static void main(String[] args) throws Exception {

ScriptEngineManager manager = new ScriptEngineManager();

ScriptEngine engine = manager.getEngineByName("js");

String jsFileName="G:\\javaPro\\zmwmcc\\WebRoot\\jsss.js";

FileReader reader = new FileReader(jsFileName); ? // 執(zhí)行指定腳本 ? ?? ? ? ? ?engine.eval(reader);

if(engine instanceof Invocable) {

Invocable invoke = (Invocable)engine; ? ?// 調(diào)用merge方法,并傳入兩個(gè)參數(shù)

Double c = (Double)invoke.invokeFunction("aa", 2, 3); //調(diào)用了js的aa方法

System.out.println(c);

}

// engine.eval("alert(\"js alert\");"); ? ?// 不能調(diào)用瀏覽器中定義的js函數(shù) // 錯(cuò)誤,會(huì)拋出alert引用不 ? ?}

}

java軟件里面的跳轉(zhuǎn)頁(yè)面代碼實(shí)現(xiàn)

1. RequestDispatcher.forward()

是在服務(wù)器端起作用,當(dāng)使用forward()時(shí),Servlet engine傳遞HTTP請(qǐng)求從當(dāng)前的Servlet or JSP到另外一個(gè)Servlet,JSP 或普通HTML文件,也即你的form提交至a.jsp,在a.jsp用到了forward()重定向至b.jsp,此時(shí)form提交的所有信息在 b.jsp都可以獲得,參數(shù)自動(dòng)傳遞. 但forward()無(wú)法重定向至有frame的jsp文件,可以重定向至有frame的html文件,同時(shí)forward()無(wú)法在后面帶參數(shù)傳遞,比如servlet?name=frank,這樣不行,可以程序內(nèi)通過(guò)response.setAttribute("name",name)來(lái)傳至下一個(gè)頁(yè)面。

重定向后瀏覽器地址欄URL不變。

例:在servlet中進(jìn)行重定向

public void doPost(HttpServletRequest request,HttpServletResponse response)

throws ServletException,IOException

{

response.setContentType("text/html; charset=gb2312");

ServletContext sc = getServletContext();

RequestDispatcher rd = null;

rd = sc.getRequestDispatcher("/index.jsp"); //定向的頁(yè)面

rd.forward(request, response);

}

通常在servlet中使用,不在jsp中使用。

2. response.sendRedirect()

是在用戶的瀏覽器端工作,sendRedirect()可以帶參數(shù)傳遞,比如servlet?name=frank傳至下個(gè)頁(yè)面,同時(shí)它可以重定向至不同的主機(jī)上,sendRedirect()可以重定向有frame.的jsp文件.

重定向后在瀏覽器地址欄上會(huì)出現(xiàn)重定向頁(yè)面的URL

例:在servlet中重定向

public void doPost(HttpServletRequest request,HttpServletResponse response)

throws ServletException,IOException

{

response.setContentType("text/html; charset=gb2312");

response.sendRedirect("/index.jsp");

}

由于response是jsp頁(yè)面中的隱含對(duì)象,故在jsp頁(yè)面中可以用response.sendRedirect()直接實(shí)現(xiàn)重定位。

注意:

(1) 使用response.sendRedirect時(shí),前面不能有HTML輸出;

這并不是絕對(duì)的,不能有HTML輸出其實(shí)是指不能有HTML被送到了瀏覽器。事實(shí)上現(xiàn)在的server都有cache機(jī)制,一般在8K(我是說(shuō) JSP SERVER),這就意味著,除非你關(guān)閉了cache,或者你使用了out.flush()強(qiáng)制刷新,那么在使用sendRedirect之前,有少量的HTML輸出也是允許的。

(2) response.sendRedirect之后,應(yīng)該緊跟一句return。

我們已經(jīng)知道response.sendRedirect是通過(guò)瀏覽器來(lái)做轉(zhuǎn)向的,所以只有在頁(yè)面處理完成后,才會(huì)有實(shí)際的動(dòng)作。既然你已經(jīng)要做轉(zhuǎn)向了,那么后的輸出還有什么意義呢?而且有可能會(huì)因?yàn)楹竺娴妮敵鰧?dǎo)致轉(zhuǎn)向失敗。

比較:

(1) Dispatcher.forward()是容器中控制權(quán)的轉(zhuǎn)向,在客戶端瀏覽器地址欄中不會(huì)顯示出轉(zhuǎn)向后的地址;

(2) response.sendRedirect()則是完全的跳轉(zhuǎn),瀏覽器將會(huì)得到跳轉(zhuǎn)的地址,并重新發(fā)送請(qǐng)求鏈接。這樣,從瀏覽器的地址欄中可以看到跳轉(zhuǎn)后的鏈接地址。

前者更加高效,在前者可以滿足需要時(shí),盡量使用RequestDispatcher.forward()方法。

注:在有些情況下,比如,需要跳轉(zhuǎn)到一個(gè)其它服務(wù)器上的資源,則必須使用HttpServletResponse.sendRequest()方法。

3. <jsp:forward page="" />

它的底層部分是由RequestDispatcher來(lái)實(shí)現(xiàn)的,因此它帶有RequestDispatcher.forward()方法的印記。

如果在之前有很多輸出,前面的輸出已使緩沖區(qū)滿,將自動(dòng)輸出到客戶端,那么該語(yǔ)句將不起作用,這一點(diǎn)應(yīng)該特別注意。

另外要注意:它不能改變?yōu)g覽器地址,刷新的話會(huì)導(dǎo)致重復(fù)提交

4. 修改HTTP header的Location屬性來(lái)重定向

通過(guò)設(shè)置直接修改地址欄來(lái)實(shí)現(xiàn)頁(yè)面的重定向。

jsp文件代碼如下:

<%

response.setStatus(HttpServletResponse.SC_MOVED_PERMANENTLY);

String newLocn = "/newpath/jsa.jsp";

response.setHeader("Location",newLocn);

%>

5. JSP中實(shí)現(xiàn)在某頁(yè)面停留若干秒后,自動(dòng)重定向到另一頁(yè)面

在html文件中,下面的代碼:

<meta http-equiv="refresh" content="300; url=target.jsp">

它的含義:在5分鐘之后正在瀏覽的頁(yè)面將會(huì)自動(dòng)變?yōu)閠arget.html這一頁(yè)。代碼中300為刷新的延遲時(shí)間,以秒為單位。targer.html為你想轉(zhuǎn)向的目標(biāo)頁(yè),若為本頁(yè)則為自動(dòng)刷新本頁(yè)。

由上可知,可以通過(guò)setHeader來(lái)實(shí)現(xiàn)某頁(yè)面停留若干秒后,自動(dòng)重定向到另一頁(yè)面。

關(guān)鍵代碼:

String content=stayTime+";URL="+URL;

response.setHeader("REFRESH",content);

JAVA中打開新頁(yè)面代碼

/**

* 打開打印窗口

* url:鏈接頁(yè)面或action動(dòng)作

* Banglu

*/

function printWindow(url){

var sURL = url;

var sFeatures = "toolbar=no, menubar=no, scrollbars=no,resizable=yes, "

+ "location=no, status=no, titlebar=no, width=800, height=600, top=100, left=100";

window.open(sURL,'notoolbar',sFeatures);

}function exportWindow(url){

var sURL = url;

var sFeatures = "toolbar=no, menubar=no, scrollbars=no,resizable=yes, "

+ "location=no, status=no, titlebar=no, width=800, height=600, top=50, left=50";

var objwin=window.open(sURL,'export'+randomNum(),sFeatures);

objwin.close();

}

/**

* 打開模態(tài)窗口

* url:鏈接頁(yè)面或action動(dòng)作

* width:打開模態(tài)窗口的寬度

* height:打開模態(tài)窗口的高度

* 注意:打開模態(tài)窗口的頁(yè)面中要在head后面加上

* meta http-equiv="Pragma" content="no-cache":禁止模態(tài)窗口緩存

* base target="_self"/:模態(tài)窗口中的表單在本窗口中提交

* a onClick='window.location = "view-source:" + window.location.href'b源文件/b/a 可以查看模態(tài)窗口的源文件

* Banglu

*/

function modalWindow(url, width, height){

var sURL = url;

var sFeatures = "dialogWidth:" + width + "px; dialogHeight:" + height + "px; "

+ "help:no; scroll:yes; center:yes; status:no;resizable:yes";

window.showModalDialog(sURL, window, sFeatures);

}/**

* 打開普通窗口

* url:鏈接頁(yè)面或action動(dòng)作

* width:寬度

* height:高度

* Banglu

*/

function openWindow(url, width, height){

var sURL=url;

var sFeatures = "scrollbars=yes, status=yes, resizable=yes,"

+ "toolbar=yes, menubar=yes, location=yes, titlebar=yes"

if(width!=null){

sFeatures+=", width="+width;

}

if(height!=null){

sFeatures+=", height="+height;

}

window.open(sURL, 'open'+randomNum(), sFeatures);

}/**

* 打開窗口

* url:鏈接頁(yè)面或action動(dòng)作

* width:寬度

* height:高度

Banglu

*/

function openNoBarWindow(url, width, height){

var sURL=url;

var sFeatures = "scrollbars=no, status=no, resizable=no,"

+ "toolbar=no, menubar=no, location=no, titlebar=no"

if(width!=null){

sFeatures+=", width="+width;

sFeatures+=", left="+(screen.width-width)/2;

}

if(height!=null){

sFeatures+=", height="+height;

sFeatures+=", top="+(screen.height-height-100)/2;

}

window.open(sURL, 'openNoBar'+randomNum(), sFeatures);

}

/**

* 打開全屏窗口

* url:鏈接頁(yè)面或action動(dòng)作

* Banglu

*/

function openFullWindow(url){

var sURL=url;

var sFeatures = "toolbar=no, menubar=no, scrollbars=no, resizable=yes, "

+ "location=no, status=no, titlebar=no, width="+(screen.width-10)+", "

+ "height="+(screen.height-60)+", top=0, left=0";

window.open(sURL, 'full'+randomNum(), sFeatures);

}/**

* 打開主窗口

* url:鏈接頁(yè)面或action動(dòng)作

* Banglu

*/

function openMainWindow(url){

var sURL=url;

var sFeatures = "toolbar=no, menubar=no, scrollbars=no, resizable=yes, "

+ "location=no, status=no,titlebar=no, width="+(screen.width-10)+", "

+ "height="+(screen.height-60)+", top=0, left=0";

window.open(sURL, 'main', sFeatures);

}

/**

* 設(shè)置鏈接

* url:連接的jsp頁(yè)面或action動(dòng)作

* Banglu

*/

function link(url, frameID){

if(frameID==null){

window.location.href = url;

}

else{

window.frames[frameID].location = url

}

}/**

* 回車代替tab

* Banglu

*/

function handleKey(){

var gk = window.event.keyCode;

if (gk==13) {

if(window.event.srcElement.tagName!='TEXTAREA'){

window.event.keyCode=9;

return;

}

}

}/**

* 全屏顯示

* Banglu

*/

function fullScreen(){

window.dialogHeight=window.screen.availHeight;

window.dialogWidth=window.screen.availWidth;

}

function Resize_dialog(t,l,w,h) {

window.dialogTop = t+"px";

window.dialogLeft = l+"px";

window.dialogHeight = h+"px";

window.dialogWidth = w+"px";

}


網(wǎng)頁(yè)標(biāo)題:java執(zhí)行頁(yè)面代碼,java直接執(zhí)行代碼
路徑分享:http://weahome.cn/article/dssoppi.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部