Hatena::Groupjavamemo

Javaメモ このページをアンテナに追加

2008-11-05

Tomcatへプログラムを配置(Ubuntu8.10)

Tomcatへプログラムを配置(Ubuntu8.10) - Javaメモ を含むブックマーク はてなブックマーク - Tomcatへプログラムを配置(Ubuntu8.10) - Javaメモ Tomcatへプログラムを配置(Ubuntu8.10) - Javaメモ のブックマークコメント

import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;

public class HelloWorld extends HttpServlet {

    public void doGet(HttpServletRequest request, HttpServletResponse response)
    throws IOException, ServletException{

        response.setContentType("text/html");
        PrintWriter out = response.getWriter();
        out.println("<html>");
        out.println("<head>");
        out.println("<title>Hello World!</title>");
        out.println("</head>");
        out.println("<body>");
        out.println("<h1>Hello World!</h1>");
        out.println("</body>");
        out.println("</html>");
    }
}

$ javac -classpath "/usr/share/tomcat6/lib/servlet-api.jar" HelloWorld.java して HelloWorld.class ファイルを作成。

HelloWorld.class を /usr/share/tomcat5.5-webapps/ROOT/WEB-INF/classes へコピー。

/usr/share/tomcat5.5-webapps/ROOT/WEB-INF/web.xml を開いて、

    <servlet>
        <servlet-name>helloworld</servlet-name>
        <servlet-class>HelloWorld</servlet-class>
    </servlet>

    <servlet-mapping>
        <servlet-name>helloworld</servlet-name>
        <url-pattern>/helloworld</url-pattern>
    </servlet-mapping>

を追加。

http://localhost:8180/helloworldHelloWorld が表示されます。


web.xmlの記述 - アプリケーションの作成と配置 - サーブレット入門

ttfhuwksyottfhuwksyo2013/08/28 15:37gutkdkbwbnfnp, <a href="http://www.ftljoibcmt.com/">fgbwdjqjjf</a>

hogepzwpkfhogepzwpkf2013/08/29 09:34pysmekbwbnfnp, <a href="http://www.mlcfihoocs.com/">klqjdgdxbi</a> , [url=http://www.pzazvpacwv.com/]hrbnmmiabt[/url], http://www.zofvvcisgw.com/ klqjdgdxbi

xejxqxgobgxejxqxgobg2013/11/23 21:02zmmbikbwbnfnp, <a href="http://www.ifjdygrbpa.com/">kwrmjlprhs</a> , [url=http://www.etshgbbten.com/]qqlkltdemg[/url], http://www.opttrcydbm.com/ kwrmjlprhs

CereTeryCereTery2018/05/12 07:06Amy had decided the car was hers, which suited Leo who could never seem to get enough physical exercise. Unfortunately, winning three trophies in minor Muscle-Building contests provided no useful financial gain, and a string of temporary jobs scarcely paid the bills. Life as an escort for wealthy women paid reasonably well, until he learned about the dangers of injecting chemicals into his penis to achieve erections.
Thats for sure, Leo agreed. And if you dont worship their god youll go to hell and burn forever. Its sick. Millions of people living in fear in case they annoy a god and have to spend eternity up to their necks in shit, or whatever their mad ministers tell them. Its why theyre so scared of dying and wont let people suicide when theyve had enough, like Morts grandfather. But he was too smart for them, imported a drug from overseas where theyre not so crazy, and died peacefully.
<a href=http://gobi.com.sg>buy cake online</a> As long as we accept that Nature is God.
So, girls. Are you all shocked?

2008-10-28

タグを除去

| タグを除去 - Javaメモ を含むブックマーク はてなブックマーク - タグを除去 - Javaメモ タグを除去 - Javaメモ のブックマークコメント

import java.net.*;
import java.io.*;
import java.util.regex.*;


public class HelloWorldURL {
  public static void main(String[] args) {
  Pattern pattern = Pattern.compile("<.+?>", Pattern.DOTALL);
  Matcher matcher;

    try {
      URL helloURL = new URL("http://www.yahoo.co.jp/");  // URLクラスのインスタンスを生成
      
      BufferedReader in = new BufferedReader(  // 入力ストリームを生成
                                new InputStreamReader(
                                helloURL.openStream()));

      String line;   // 一行ずつ読み込みます
      while ((line = in.readLine()) != null) {
        matcher = pattern.matcher(line);  //置換対象
        String string = matcher.replaceAll("");  //置換
        System.out.println(string);  // 表示します
      }
    
      in.close();  // 入力ストリームを閉じます
    } catch (IOException e) {
      e.printStackTrace();
    }
  }
}

$ javac HelloWorldURL.java

$ java HelloWorldURL


正規表現によるマッチング

HTMLを取得

| HTMLを取得 - Javaメモ を含むブックマーク はてなブックマーク - HTMLを取得 - Javaメモ HTMLを取得 - Javaメモ のブックマークコメント

import java.net.*;
import java.io.*;

public class HelloWorldURL {
  public static void main(String[] args) {
    try {
      URL helloURL = new URL("http://www.yahoo.co.jp/");  // URLクラスのインスタンスを生成
      
      BufferedReader in = new BufferedReader(  // 入力ストリームを生成
                                new InputStreamReader(
                                helloURL.openStream()));

      String line;   // 一行ずつ読み込みます
      while ((line = in.readLine()) != null) {
        System.out.println(line);  // 表示します
      }
    
      in.close();  // 入力ストリームを閉じます
    } catch (IOException e) {
      e.printStackTrace();
    }
  }
}

$ javac HelloWorldURL.java

$ java HelloWorldURL


JavaでHello World URL編


JavaでHello World HTTP編

スーパークラス変数 クラスの継承

| スーパークラス変数 クラスの継承 - Javaメモ を含むブックマーク はてなブックマーク - スーパークラス変数 クラスの継承 - Javaメモ スーパークラス変数 クラスの継承 - Javaメモ のブックマークコメント

class ctest19{
    public static void main(String args[]){
        superClass obj[] = new superClass[3];

        obj[0] = new subClassA();
        obj[1] = new subClassB();
        obj[2] = new subClassC();

        for (int i = 0 ; i < 3 ; i++){
            obj[i].dispName();
        }
    }
}

class superClass{
    public void dispName(){
        System.out.println("未定義です");
    }
}

class subClassA extends superClass{
    public void dispName(){
        System.out.println("製品名はXXXです");
    }
}

class subClassB extends superClass{
    public void dispName(){
        System.out.println("製品名はYYYです");
    }
}

class subClassC extends superClass{
    public void dispName(){
        System.out.println("製品名はZZZです");
    }
}

$ javac ctest19.java

$ java ctest19


スーパークラスの変数を使う - クラスの継承 - Java入門


クラスの継承とは - クラスの継承 - Java入門

クラスを利用する

クラスを利用する - Javaメモ を含むブックマーク はてなブックマーク - クラスを利用する - Javaメモ クラスを利用する - Javaメモ のブックマークコメント

class ctest1{

    public static void main(String args[]){
        Television tv1 = new Television();
        tv1.setChannel(1);
        tv1.dispChannel();

    }
}

class Television{
    int channelNo;

    void setChannel(int newChannelNo){
        channelNo = newChannelNo;
    }

    void dispChannel(){
        System.out.println("現在のチャンネルは " + channelNo + " です");
    }
}

$ javac ctest1.java

$ java ctest1


クラスを利用してみる - クラスとは何か - Java入門

引数

| 引数 - Javaメモ を含むブックマーク はてなブックマーク - 引数 - Javaメモ 引数 - Javaメモ のブックマークコメント

class test26{

    public static void main(String args[]){
        System.out.println("あなたが入力した文字は");
        System.out.println(args[0]);
        System.out.println("です。");
    }
}

$ javac test26.java

$ java test26 hello


mainメソッドの引数 - mainメソッドについて - Java入門

日時取得

| 日時取得 - Javaメモ を含むブックマーク はてなブックマーク - 日時取得 - Javaメモ 日時取得 - Javaメモ のブックマークコメント

import java.util.Calendar;

class testCalendar1{

    public static void main(String args[]){
        String[] week_name = {"日曜日", "月曜日", "火曜日", 
                 "水曜日", "木曜日", "金曜日", "土曜日"};

        Calendar calendar = Calendar.getInstance();

        int year = calendar.get(Calendar.YEAR);
        int month = calendar.get(Calendar.MONTH) + 1;
        int day = calendar.get(Calendar.DATE);
        int hour = calendar.get(Calendar.HOUR_OF_DAY);
        int minute = calendar.get(Calendar.MINUTE);
        int second = calendar.get(Calendar.SECOND);
        int week = calendar.get(Calendar.DAY_OF_WEEK) - 1;

        int day_of_year = calendar.get(Calendar.DAY_OF_YEAR);



        System.out.println("現在の日時は");
        System.out.println(year + "年" + month + "月" + day + "日");
        System.out.println("(" + week_name[week] + ")");
        System.out.println(hour + "時" + minute + "分" + second + "秒");

        System.out.println("今日は今年の" + day_of_year + "日目です");
    }
}

$ javac testCalendar1.java

$ java testCalendar1


日時に関する情報を取得する(get) - Calendarクラス - Java入門

ファイル読み込み

| ファイル読み込み - Javaメモ を含むブックマーク はてなブックマーク - ファイル読み込み - Javaメモ ファイル読み込み - Javaメモ のブックマークコメント

import java.io.*;

public class HelloWorldFileReader {
  public static void main(String[] args) {
    try {
      FileInputStream fis = new FileInputStream("hello.txt");
      InputStreamReader ir = new InputStreamReader(fis , "MS932");
      BufferedReader br = new BufferedReader(ir);
      String msg = br.readLine();
      // 表示
      System.out.println(msg);
      
      fis.close();
      ir.close();
      fis.close();
    } catch (Exception e) {
      e.printStackTrace();
    }
  }
}

$ javac HelloWorldFileReader.java

$ java HelloWorldFileReader


JavaでHello World ファイル入出力編

ファイル書き込み

| ファイル書き込み - Javaメモ を含むブックマーク はてなブックマーク - ファイル書き込み - Javaメモ ファイル書き込み - Javaメモ のブックマークコメント

import java.io.*;

public class HelloWorldFileWriter {
  public static void main(String[] args) {
    try {
      FileOutputStream fos = new FileOutputStream("hello.txt");
      OutputStreamWriter osw = new OutputStreamWriter(fos , "MS932");
      BufferedWriter bw = new BufferedWriter(osw);
      String msg = "こんにちは 世界";
      bw.write(msg);
      
      bw.close();
      osw.close();
      fos.close();
    } catch (Exception e) {
      e.printStackTrace();
    }
  }
}

$ javac HelloWorldFileWriter.java

$ java HelloWorldFileWriter

JavaでHello World ファイル入出力編

フォームで入力されたデータを表示

| フォームで入力されたデータを表示 - Javaメモ を含むブックマーク はてなブックマーク - フォームで入力されたデータを表示 - Javaメモ フォームで入力されたデータを表示 - Javaメモ のブックマークコメント

http://localhost:8080/params0.html

<HTML>
<HEAD></HEAD>
<BODY>
<FORM METHOD="GET" ACTION="params.jsp">
<TABLE>
<TR><TD>P1</TD><TD>P2</TD><TD>P3</TD></TR>
<TR><TD VALIGN="TOP">
<SELECT NAME="P1" MULTIPLE>
<OPTION VALUE="A">A
<OPTION VALUE="B">B
<OPTION VALUE="C">C
<OPTION VALUE="D">D
</SELECT>
</TD><TD VALIGN="TOP">

<SELECT NAME="P2" MULTIPLE>
<OPTION VALUE="1">1
<OPTION VALUE="2">2
<OPTION VALUE="3">3
<OPTION VALUE="4">4
</SELECT>
</TD><TD VALIGN="TOP">
<INPUT TYPE="TEXT" NAME="P3" SIZE="10">
</TD></TR></TABLE>
<INPUT TYPE="SUBMIT">
</FORM>
</BODY>
</HTML>

params.jsp

<%@ page contentType="text/html; charset=euc-jp" %>
<%@ page import="java.util.*" %>
<HTML>
<HEAD></HEAD>
<BODY>
<%--
   params.jsp
   Several Access Methods to access Parameters

   S.Terada
--%>

<HR>
P1 = <%= request.getParameter("P1") %>
<BR>
P0 = <%= request.getParameter("P0") %>

<HR>
P2 = (
<%
  String[] s = request.getParameterValues("P2");
  for(int i = 0; i < s.length; ++i) {
%>
<%= s[i] %>
<%
  }
%>
)

<HR>
<%
  Enumeration e = request.getParameterNames();
  while (e.hasMoreElements()) {
    String sParamName = (String)e.nextElement();
    String[] sVals = request.getParameterValues(sParamName);
%>
Parameter Name: <%= sParamName %> = (
<%
    for(int i = 0; i < sVals.length; ++i) {
%>
<%= sVals[i] %>
<%
    }
%>
)<BR>
<%
  }
%>
<HR>
Referer URL = <%= request.getHeader("Referer") %>
<HR>

</BODY>
</HTML>

JSP1.0基礎の基礎:パラメータへのアクセス

正規表現

| 正規表現 - Javaメモ を含むブックマーク はてなブックマーク - 正規表現 - Javaメモ 正規表現 - Javaメモ のブックマークコメント

import java.util.regex.*;

public class HelloWorldRegex {
  public static void main(String[] args) {
    Pattern pattern;
    Matcher matcher;
    /* パターンマッチ */
    System.out.println("<パターンマッチ>");
    pattern = Pattern.compile("^Java.*");
    matcher = pattern.matcher("JavaでHello World");
    boolean b = matcher.matches();
    System.out.println(b);
    
    /* 文字列の分割 */
    System.out.println("<文字列の分割>");
    pattern = Pattern.compile(" ");
    String[] strs = pattern.split("Java Hello World");
    for (int i=0;i<strs.length;i++) {
      System.out.println(strs[i]);
    }
    
    /* 文字列の置換(最初にマッチしたもののみ) */
    System.out.println("<文字列の置換(最初にマッチしたもののみ)>");
    pattern = Pattern.compile("正規表現");
    matcher = pattern.matcher("正規表現でHello World,正規表現でHello World");
    System.out.println(matcher.replaceFirst("Java"));
    
    /* 文字列の置換(一括) */
    System.out.println("<文字列の置換(一括)>");
    pattern = Pattern.compile("正規表現");
    matcher = pattern.matcher("正規表現でHello World,正規表現でHello World");
    System.out.println(matcher.replaceAll("Java"));
    
    /* 文字列の置換(一つ一つ順々に) */
    System.out.println("<文字列の置換(一つ一つ順々に)>");
    pattern = Pattern.compile("正規表現");
    matcher = pattern.matcher("正規表現でHello World,正規表現でHello World");
    StringBuffer sb = new StringBuffer();
    while (matcher.find()) {
      matcher.appendReplacement(sb, "Java");
    }
    matcher.appendTail(sb);
    System.out.println(sb.toString());
  }
}

$ javac HelloWorldRegex.java

$ java HelloWorldRegex


JavaでHello World 正規表現編

gedit 正規表現で置換

| 14:04 | gedit 正規表現で置換 - Javaメモ を含むブックマーク はてなブックマーク - gedit 正規表現で置換 - Javaメモ gedit 正規表現で置換 - Javaメモ のブックマークコメント

The Spirit of Ubuntu: geditで正規表現を使う


行頭の3文字を削除したい時は、

Search for を ^...

Replace with には何も入力せず

Replace All

jspでif

| 13:58 | jspでif - Javaメモ を含むブックマーク はてなブックマーク - jspでif - Javaメモ jspでif - Javaメモ のブックマークコメント

http://localhost:8080/if.jsp

<%@ page import="java.util.*"
    contentType="text/html; charset=euc-jp" %>
<%  GregorianCalendar calendar = new GregorianCalendar();  // 現在の時刻を取得
    int nowHour = calendar.get(Calendar.HOUR_OF_DAY);  
    String message = "";
    if(nowHour >= 7 && nowHour < 12) {
      message = "午前中";
    } else if(nowHour >= 12 && nowHour < 19) {
      message = "午後";
    } 
%>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head><title>時刻に応じたあいさつを表示する例</title></head>
<body>
<%= message %>
</body>
</html> 

連載:Tomcatを使う「JSPプログラミング」第3回

jspで時刻を表示

| 13:35 | jspで時刻を表示 - Javaメモ を含むブックマーク はてなブックマーク - jspで時刻を表示 - Javaメモ jspで時刻を表示 - Javaメモ のブックマークコメント

http://localhost:8080/time.jsp

<%@ page contentType="text/html; charset=euc-jp" %>
<% java.util.Date nowTime = new java.util.Date();   // 現在の時刻を取得
%>  
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head><title>時刻を出力する例</title></head>
<body>
現在の時刻は <%= nowTime %> です。
</body>
</html>

連載:Tomcatを使う「JSPプログラミング」第3回


02 スクリプトを実行する

jspでHello World

| 13:24 | jspでHello World - Javaメモ を含むブックマーク はてなブックマーク - jspでHello World - Javaメモ jspでHello World - Javaメモ のブックマークコメント

先に Tomcat6をインストール します。

<html>
<head><title>Hello World!</title></head>
<body>
<h1>Hello World!</h1>
<p>
<%
   String hello = "Hello World!";
   out.println(hello);
%>
</p>
</body>
</html> 

hello.jsp を作成して、

$ sudo chmod 777 /usr/share/tomcat6/webapps/ROOT して

/usr/share/tomcat6/webapps/ROOT/ に hello.jsp をコピー

http://localhost:8080/hello.jspHello World が表示されます。


(Ubuntu 8.10では

$ sudo chmod 777 /var/lib/tomcat6/webapps/default_root して

/var/lib/tomcat6/webapps/default_root に hello.jsp をコピー

http://localhost:8080/hello.jspHello World が表示されます。)


連載:Tomcatを使う「JSPプログラミング」 第2回

Direct Lenders Direct Lenders 2018/06/17 05:33loan online <a href="http://loansonline.cars">online loans</a> loans online no credit check <a href=http://loansonline.cars>cash loans online</a>

2008-10-26

Tomcatへプログラムを配置

| 00:53 | Tomcatへプログラムを配置 - Javaメモ を含むブックマーク はてなブックマーク - Tomcatへプログラムを配置 - Javaメモ Tomcatへプログラムを配置 - Javaメモ のブックマークコメント

Eclipseで新規プロジェクトを作成、クラスを追加で HelloWorldServlet を追加。

プロジェクトのプロパティを開き、「外部JARの追加」でライブラリ(/usr/shere/java/tomcat6/tomcat6-servlet-2.5-api-0.6.18.jar)を追加します。

import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;

public class HelloWorldServlet extends HttpServlet {
  /**
	 * 
	 */
	private static final long serialVersionUID = 1L;
/**
	 * 
	 */
public void service(HttpServletRequest request, 
                      HttpServletResponse response) 
                          throws ServletException, IOException {
    // ContentTypeを設定
    response.setContentType("text/html; charset=Shift_JIS");
    // 出力用PrintWriterを取得
    PrintWriter out = response.getWriter();
    // 出力
    out.println("<html>");
    out.println("<head>");
    out.println("<title>Hello World Servlet</title>");
    out.println("</head>"); 
    out.println("<body>");
    out.println("Hello World2"); 
    out.println("</body>");
    out.println("</html>");
  } 
}

で実行するとエラーが出ますがHelloWorldServlet.classは作成されていました。

/home/hiroyuki/eclipse/HelloWorldServlet/bin に HelloWorldServlet.class ができているので、/usr/share/tomcat6/webapps/ROOT/WEB-INF/classes のclassesフォルダを作成して、class フォルダへコピー。

WEB-INFにあるweb.xml

  <servlet>
    <servlet-name>Hello</servlet-name>
    <servlet-class>HelloWorldServlet</servlet-class>
  </servlet>
  <servlet-mapping>
    <servlet-name>Hello</servlet-name>
    <url-pattern>/Hello</url-pattern>
  </servlet-mapping>

を追加して、

http://localhost:8080/Helloアクセスすると、Hello World と表示できました。


Javaの道:Tomcat(2.プログラム配置・実行)


JavaでHello World サーブレット (Servlet)編

Tomcat6インストール

| 23:33 | Tomcat6インストール - Javaメモ を含むブックマーク はてなブックマーク - Tomcat6インストール - Javaメモ Tomcat6インストール - Javaメモ のブックマークコメント

$ sudo yum install tomcat6 します。

$ sudo /etc/rc.d/init.d/httpd start します。

$ sudo /etc/rc.d/init.d/tomcat6 start します。

http://localhost:8080/アクセスできるようになります。


(Ubuntu8.10では

$ sudo apt-get install tomcat6

$ sudo /etc/init.d/tomcat6 start

http://localhost:8080/アクセス

http://localhost:8180/Tomcat/5.5にアクセス)

Ubuntu 7.04にTomcat5.5をインストール - Syo-Takasakiの日記


jspでHello World


JavaでHello World サーブレット (Servlet)編

Eclipse

| 20:59 | Eclipse - Javaメモ を含むブックマーク はてなブックマーク - Eclipse - Javaメモ Eclipse - Javaメモ のブックマークコメント

$ sudo yum install eclipse-platform.i386 eclipse-jdt.i386 eclipse-nls-ja.noarch でインストールします。(150MB)


「ファイル」ー「新規」ー「プロジェクト」ー「Java プロジェクト」 HelloWorld

「ファイル」ー「新規」ー「クラス」 HelloWorld で作成して、

public class HelloWorld {
  public static void main(String[] args) {
    System.out.println("Hello World");
  }
}

のようにして、

実行ボタンをクリックするとHello Worldが表示されます。


eclipse 補完 キーボード入力が出来ないときがある

Fedora JP 掲示板


「ウィンドウ」ー「設定」ー「一般」ー「キー」ー「スキーム」ー「Emacs

Emacs風キーバインド - EclipseWiki


「ウィンドウ」ー「設定」ー「一般」ー「外観」ー「色とフォント」ー「Java エディター」のフォントサイズを7に変更。

「デバック」ー「コンソール」のフォントサイズも7に。

java/uml/eclipse: Eclipse 3.1.2 エディタのフォントの変更


@IT:Eclipseではじめるプログラミング(2)


HelloWorldを書く - EclipseWiki


Webアプリのための標準プラグイン「WTP」 - @IT

Javaインストール

| 19:48 | Javaインストール - Javaメモ を含むブックマーク はてなブックマーク - Javaインストール - Javaメモ Javaインストール - Javaメモ のブックマークコメント

$ sudo yum install "java-*-openjdk*"

(Ubuntu8.10だと $ sudo apt-get install "openjdk-6*")


HelloWorld.java

public class HelloWorld {
  public static void main(String[] args) {
    System.out.println("Hello World");
  }
}

$ javac HelloWorld.java

$ java HelloWorld


Fedora 9 WineとWindowsアプリケーションソフト


Java開発実行環境を構築する(J2SDK-Linux編) - Fedoraで自宅サーバー構築