Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Java EE (J2EE) и Spring > Начало работы


Автор: hovercat 10.5.2012, 13:48
создал бд в mysql под названием tbd
потом создал таблицу
Код

create table `tdb``.tt`(
`id` bigint auto_increment not null,
`name` varchar(50)  not null,
primary key `id`(`id`));

и внес в нее данные
Код

insert into  `tdb`.`tt` values
(0,"val1"),
(0,"val2"),
(0,"val3"),
(0,"val4"),
(0,"val5");

создаю консольное приложение
Код

import java.sql.*;
public class miuio {
    public static void main(String[] args) {
        Connection conn = null;
        try
        {
            String url = "jdbc:mysql://localhost/tdb?user=root&password=root";
            conn = DriverManager.getConnection (url);
            Class.forName ("com.mysql.jdbc.Driver").newInstance ();                
            System.out.println ("Database connection established");           
            Statement st = conn.createStatement();
            String sql = "SELECT * FROM tdb.tt p";
            ResultSet rs = st.executeQuery(sql);
            System.out.println("id\tname");
            rs.first();
            while(rs.next()){
             System.out.println(rs.getString("id") + "\t" + rs.getString("name"));
            }           
        }
        catch (Exception e)
        {
            System.err.println ("Cannot connect to database server");
            e.printStackTrace();
        }
        finally
        {
            if (conn != null)
            {
                try
                {
                    conn.close ();
                    System.out.println ("Database connection terminated");
                }
                catch (Exception e) { }
            }
        }
    }
}

все работает(ну почти все, выдает записи начиная со второй, хотя mysql gui tools на этот же запрос показывает все записи)
Код

Database connection established
id    name
2    val2
3    val3
4    val4
5    val5
Database connection terminated


потом в эклипсе создаю dynamic web project, потом добавляю в проект сервер томкат. добавляю jsp файл 
Код

<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
    <head>
        <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
        <title>Insert title here</title>
    </head>
    <body>
ky
    </body>
</html>
 работает, но стоит мне добавить 
Код

<%@ taglib prefix="sql" uri="http://java.sun.com/jsp/jstl/sql"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
 все перестает работать, как решить эту проблему?

Автор: 4epT 10.5.2012, 15:24
По поводу вывода не всех записей...

Код

rs.first(); //вытащил первую запись 
            while(rs.next()){ //вытащил вторую запись
....


То есть первую запись ты просто пропустил.

А как ругается на taglib ? сами taglib подключил ?

Автор: hovercat 10.5.2012, 18:55
Цитата(4epT @  10.5.2012,  15:24 Найти цитируемый пост)
А как ругается на taglib ?

Can not find the tag library descriptor for "http://java.sun.com/jsp/jstl/sql"

Цитата(4epT @  10.5.2012,  15:24 Найти цитируемый пост)
сами taglib подключил ? 

а как и где их нужно подключать?

Автор: 4epT 10.5.2012, 19:06
Нужной найти соответствующие tld файлы и подключить.

Сам никогда не работал с ними, погуглив могу предложить подключить их таким образом:

1) tld файл записать сюда web-Inf/lib
или
2) jar файл записать сюда web-Inf/lib
или
3) записать jar файлы в tomcat в папку lib

Потом еще нужно вроде их прописать в web.xml

Чуть позже может найду время, попробую сделать тестовый проект, тогда отпишусь более подробно. 

Автор: 4epT 10.5.2012, 19:26
Сделал тестовый проект...

Скачай от http://archive.apache.org/dist/jakarta/taglibs/standard/binaries/ набор библиотек и tld. Библиотеки  подключи просто в проект. tld я запихнул сюда web-inf/tlds.

После чего на jsp добавил:

Код

<%@ taglib prefix="c" uri="http://java.sun.com/jstl/core" %>


и собственно сам код jsp:

Код

<%@page contentType="text/html" pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
    <head>
        <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
        <title>Taglib test</title>
    </head>
    <body>
        <c:choose>
            <c:when test="true">
                <h1> true </h1>
            </c:when>
            <c:otherwise>
                <h1> c:otherwise </h1>
            </c:otherwise>
        </c:choose>
    </body>
</html>


вывело true =)

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)