Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

joined_document

.pdf
Скачиваний:
4
Добавлен:
20.03.2016
Размер:
1.84 Mб
Скачать

Пример зависимости

package com.shop.logic; import com.shop.entity.Test;

public class SomeClass {

public String doSomething(Test test) {

/* реализация */

}

}

Пример зависимости

package com.shop.logic;

import com.shop.entity.Test;

public class SomeClass {

public Test doSomething(String value) {

/* реализация */

}

}

4

Пример слабой зависимости

package com.shop.logic;

import com.shop.entity.Test; import com.shop.entity.Student;

public class SomeClass {

public Student doSomething(String fileName) { Test test = new Test();

Student student = new Student(); student.setTest(test);

return student;

}

}

Направленность ассоциаций

package com.library.entity;

public class Cover extends Entity { private String name;

private Integer useTerm;

// private int useTerm;

}

5

Направленность ассоциаций

package com.library.entity;

public class Book extends Entity { private String title; private String author; private Cover cover;

}

Направленность ассоциаций

package com.library.entity;

public class Cover extends Entity { private String name;

private Integer useTerm; private List<Book> books;

// private ArrayList<Book> books;

}

6

Множественность ассоциаций

package com.university.entity;

public class Course extends Entity { private String name;

private Teacher teacher; private List<Student> students;

}

Множественность ассоциаций

package com.university.entity;

public class Student extends Entity { private String surname; private Group group;

private List<Course> courses;

}

7

Автоматизация сборки проекта

Инструменты автоматизации сборки проектов

make

Apache Ant

Apache Maven

1

Apache Ant. Понятия

Цель (target)

Задача (task)

Работа с файловой системой (mkdir, copy, delete)

Задачи для разработки на Java (javac, jar, javadoc)

Работа с базами данных

Задачи для J2EE

Запуск утилиты Ant

ant

ant clean

ant –buildfile alternative-build.xml

ant –buildfile alternative-build.xml clean ant clean init-database run

2

Build-файл

<?xml version="1.0" encoding="UTF-8"?>

<project name="Library" basedir="." default="Run">

<!-- описание целей и задач -->

</project>

Build-файл

<?xml version="1.0" encoding="UTF-8"?>

<project name="Library" basedir="." default="Run">

<target name="Clean"> <delete dir="build"/>

</target>

</project>

3

Build-файл

<target name="Clean"> <delete dir="build"/>

</target>

<target name="Initialize" depends="Clean"> <mkdir dir="build"/>

<mkdir dir="build/web"/>

<mkdir dir="build/web/WEB-INF"/>

<mkdir dir="build/web/WEB-INF/classes"/> <mkdir dir="build/web/WEB-INF/lib"/> <copy todir="build/web">

<fileset dir="web"/> </copy>

</target>

Build-файл. Работа с БД

<target name="Start MySQL">

<exec executable="../../mysql/bin/mysqld.exe" spawn="true">

<arg value="--standalone"/> </exec>

</target>

4

Build-файл. Работа с БД

<target name="Stop MySQL"> <exec

executable="../../mysql/bin/mysqladmin.exe"> <arg value="--user=root"/>

<arg value="--password=root"/> <arg value="shutdown"/>

</exec>

</target>

Build-файл. Работа с БД

<target name="Init data base" description="БД"> <sql driver="com.mysql.jdbc.Driver"

url="jdbc:mysql://localhost:3306? encoding=UTF-8& useUnicode=true&

characterEncoding=UTF-8"

userid="root" password="root" encoding="utf8">

<!– указание SQL-запросов -->

</sql>

</target>

5

Build-файл. Работа с БД

<target name="Init data base" description="БД"> <sql ...>

<classpath>

<pathelement

location="web/WEB-INF/lib/ mysql-connector-java-5.1.17-bin.jar"/>

</classpath>

<fileset dir="sql" includes="*.sql"/> </sql>

</target>

Build-файл. Работа с БД

<target name="Init data base" description="БД"> <sql ...>

<classpath>

<pathelement

location="web/WEB-INF/lib/ mysql-connector-java-5.1.17-bin.jar"/>

</classpath>

<sort>

<fileset dir="sql" includes="*.sql"/> </sort>

</sql>

</target>

6

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]