Вход

Метрики качества обслуживания при реализации сервис-ориентированной архитектуры

Дипломная работа*
Код 98516
Дата создания 2011
Страниц 31
Источников 8
Покупка готовых работ временно недоступна.
7 680руб.

Содержание

ЗАДАНИЕ
1 ПРАКТИЧЕСКАЯ ЧАСТЬ
1.1ПОСТАНОВКА ЗАДАЧИ
1.2. ВЫБОР СРЕДСТВ РАЗРАБОТКИ
1.3. СТРУКТУРА БАЗЫ ДАННЫХ ПРИЛОЖЕНИЯ
1.2. ОБОБЩЁННАЯ СТРУКТУРА И РАЗРАБОТКА АЛГОРИТМОВ ПРИЛОЖЕНИЯ
1.5. РАЗРАБОТКА ПОЛЬЗОВАТЕЛЬСКИХ ЭЛЕМЕНТОВ УПРАВЛЕНИЯ, ОБЕСПЕЧИВАЮЩИХ СОЗДАНИЕ ГРАФИЧЕСКИХ КОМПОНЕНТОВ
СПИСОК ЛИТЕРАТУРЫ
ПРИЛОЖЕНИЯ : ЛИСТИНГ КОДА ПРОГРАММЫ

Фрагмент работы для ознакомления

qty),s.productId," +
"count(s.productId) " +
" from Sales s where s.regionId ="+ 1 +" group by s.productId";
results = em.createQuery(SQL_QUERY).getResultList().iterator();
System.out.println("All Sum is :"+ sumResult);
while ( results.hasNext() ) {
Object[] row = (Object[]) results.next();
String pName = this.getProductName((Integer)row[1]);
Float pPrice = this.getProductPrice((Integer)row[1]);
System.out.println("Name: " + pName);
System.out.println("Quantity: " + row[0]);
Long qty = (Long)(row[0]);
bardataset.setValue((Number)(pPrice* qty),(Comparable)BamService.FIRST, (Comparable)pName);
linedataset.setValue((Number)(((pPrice* qty)/1000)),(Comparable)BamService.FIRST, (Comparable)pName);
}
}
} catch (Exception e) {
System.out.println(e.getMessage());
e.printStackTrace();
} finally {
}
}
/**
* Возвращает общее количество элементы для определенного
* города
*
* @param id - Идентификатор региона (1- санкт-петербург - например)
* @return
*/
public Long getQtyItems(int regionid) {
Query query = em.createNamedQuery("Sales.QtyByRegionId");
query.setParameter("regionId", new Integer(regionid));
return (Long)(query.getSingleResult());
}
/**
* Возврашает название услуги или продукта
*
* @param productId - Идентификатор продукта/услуги
* @return название продукта
*/
public String getProductName( int productId){
Query query = em.createNamedQuery("Product.findProductName");
query.setParameter("id", new Integer(productId));
return (String)(query.getSingleResult());
}
/**
* Возвращает цену услуги или продукта
*
* @param productId - Идентификатор продукта/услуги
* @return цена продукта
*/
public Float getProductPrice( int productId){
Query query = em.createNamedQuery("Product.findProductPrice");
query.setParameter("id", new Integer(productId));
return (Float)(query.getSingleResult());
}
/**
* Возвращает объект piedataset
* @return piedataset
*/
public DefaultPieDataset getDatasetPie() {
return piedataset;
}
/**
* Возвращает объект bardataset
* @return bardataset
*/
public DefaultCategoryDataset getDatasetBar() {
return bardataset;
}
public String getCity(int regionId) {
Query query = em.createNamedQuery("Region.getRegionName");
query.setParameter("id", new Integer(regionId));
return (String)(query.getSingleResult());
}
/**
* Возвращает данные для построения точечного графика
*
* @return
*/
public DefaultCategoryDataset getDatasetLine(){
return linedataset;
}
}
// Класс BamWebService.java
package com.bam.ejb;
import java.awt.BasicStroke;
import java.awt.Color;
import java.awt.Font;
import java.awt.Polygon;
import java.awt.Shape;
import java.awt.geom.Rectangle2D;
import org.jfree.chart.ChartFactory;
import org.jfree.chart.JFreeChart;
import org.jfree.chart.axis.CategoryAxis;
import org.jfree.chart.axis.CategoryLabelPositions;
import org.jfree.chart.axis.NumberAxis;
import org.jfree.chart.plot.CategoryPlot;
import org.jfree.chart.plot.DefaultDrawingSupplier;
import org.jfree.chart.plot.DrawingSupplier;
import org.jfree.chart.plot.PiePlot3D;
import org.jfree.chart.plot.PlotOrientation;
import org.jfree.chart.renderer.category.BarRenderer;
import org.jfree.chart.renderer.category.CategoryItemRenderer;
import org.jfree.chart.renderer.category.LineAndShapeRenderer;
import org.jfree.data.category.DefaultCategoryDataset;
import org.jfree.data.general.DefaultPieDataset;
public class BamWebService {
private static BamServiceLocal service = new BamService();
public static final String PRODUCT_NAME = "Оборудования";
public static final String VAN = "Ванны";
public static final String BUISNESS_NAME = " бизнес-процесса";
public static final String SUM = "Сумма продаж (в руб.)";
private static Font myFont = new Font("Courier", Font.ITALIC,14);

public static final void retrieveDataset(int regionid) {
service.initDataset(regionid);
}
private static DefaultPieDataset getDatasetPie() {
return service.getDatasetPie();
}

private static DefaultCategoryDataset getDatasetBar() {
return service.getDatasetBar();
}
private static DefaultCategoryDataset getDatasetLine() {
return service.getDatasetLine();
}
//построение гистограммного графика
public static final JFreeChart drawBarChart ( int regionid , String operation) {
BamWebService.retrieveDataset( regionid );

DefaultCategoryDataset dataset = getDatasetBar();
JFreeChart chart = ChartFactory.createBarChart3D
( getOperationname(operation) + BUISNESS_NAME,BamWebService.PRODUCT_NAME, BamWebService.SUM,
dataset, PlotOrientation.VERTICAL, true,true, false);
chart.setBackgroundPaint(Color.yellow);
chart.getTitle().setPaint(Color.blue);
chart.getTitle().setFont(myFont);
CategoryPlot plot = chart.getCategoryPlot();
plot.setRangeGridlinePaint(Color.green);
plot.setForegroundAlpha( 0.7f );
final CategoryAxis axis = plot.getDomainAxis();
axis.setCategoryLabelPositions(
CategoryLabelPositions.createUpRotationLabelPositions(Math.PI / 8.0)
);

final CategoryItemRenderer renderer = plot.getRenderer();
renderer.setBaseItemLabelsVisible(Boolean.TRUE);
final BarRenderer r = (BarRenderer) renderer;
r.setMaximumBarWidth(0.05);
return chart;
}
//построение кругового графика
public static final JFreeChart drawPieChart( int regionid, String operation){
BamWebService.retrieveDataset( regionid );
DefaultPieDataset dataset = getDatasetPie();
// Create the charts
JFreeChart chart = ChartFactory.createPieChart3D(
getOperationname(operation) + BUISNESS_NAME, // The chart title
dataset, // The dataset for the chart
true, // Is a legend required?
true, // Use tooltips
false // Configure chart to generate URLs?
);
chart.getTitle().setFont(myFont);
PiePlot3D plot4 = ( PiePlot3D )chart.getPlot();
plot4.setExplodePercent(VAN, 26.24);
plot4.setForegroundAlpha( 0.6f );
chart.setBackgroundPaint(Color.yellow);
chart.getTitle().setPaint(Color.blue);

return chart;
}
//построение точечного графика
public static final JFreeChart drawLineChart( int regionid, String operation){
BamWebService.retrieveDataset( regionid );
DefaultCategoryDataset dataset = getDatasetLine();
JFreeChart chart = ChartFactory.createLineChart(
getOperationname(operation) +BUISNESS_NAME, // chart title
BamWebService.PRODUCT_NAME, // domain axis label
BamWebService.SUM, // range axis label
dataset, // data
PlotOrientation.VERTICAL, // orientation
true, // include legend
true, // tooltips
false // urls
);
// final StandardLegend legend = (StandardLegend) chart.getLegend();
// legend.setDisplaySeriesShapes(true);
chart.getTitle().setFont(myFont);
Shape[] shapes = new Shape[3];
int[] xpoints;
int[] ypoints;
// right-pointing triangle
xpoints = new int[] {-3, 3, -3};
ypoints = new int[] {-3, 0, 3};
shapes[0] = new Polygon(xpoints, ypoints, 3);
// vertical rectangle
shapes[1] = new Rectangle2D.Double(-2, -3, 3, 6);
// left-pointing triangle
xpoints = new int[] {-3, 3, 3};
ypoints = new int[] {0, -3, 3};
shapes[2] = new Polygon(xpoints, ypoints, 3);
DrawingSupplier supplier = new DefaultDrawingSupplier(
DefaultDrawingSupplier.DEFAULT_PAINT_SEQUENCE,
DefaultDrawingSupplier.DEFAULT_OUTLINE_PAINT_SEQUENCE,
DefaultDrawingSupplier.DEFAULT_STROKE_SEQUENCE,
DefaultDrawingSupplier.DEFAULT_OUTLINE_STROKE_SEQUENCE,
shapes
);
CategoryPlot plot = chart.getCategoryPlot();
plot.setDrawingSupplier(supplier);
chart.setBackgroundPaint(Color.yellow);
// set the stroke for each series...
plot.getRenderer().setSeriesStroke(
0,
new BasicStroke(
2.0f, BasicStroke.CAP_ROUND, BasicStroke.JOIN_ROUND,
1.0f, new float[] {10.0f, 6.0f}, 0.0f
)
);
plot.getRenderer().setSeriesStroke(
1,
new BasicStroke(
2.0f, BasicStroke.CAP_ROUND, BasicStroke.JOIN_ROUND,
1.0f, new float[] {6.0f, 6.0f}, 0.0f
)
);
plot.getRenderer().setSeriesStroke(
2,
new BasicStroke(
2.0f, BasicStroke.CAP_ROUND, BasicStroke.JOIN_ROUND,
1.0f, new float[] {2.0f, 6.0f}, 0.0f
)
);
// customise the renderer...
final LineAndShapeRenderer renderer = (LineAndShapeRenderer) plot.getRenderer();
// renderer.setDrawShapes(true);
renderer.setBaseItemLabelsVisible(true);
// renderer.setLabelGenerator(new StandardCategoryLabelGenerator());
// customise the range axis...
final NumberAxis rangeAxis = (NumberAxis) plot.getRangeAxis();
rangeAxis.setStandardTickUnits(NumberAxis.createIntegerTickUnits());
rangeAxis.setAutoRangeIncludesZero(false);
rangeAxis.setUpperMargin(0.12);
return chart;
}

public static final String getOperationname(String pname){
int pint= Integer.parseInt(pname );
String opName = "Default" ;
switch ( pint ){
case 1:
opName = "Доступность";
break;
case 2:
opName = "Практичность";
break;
case 3:
opName = "Точность";
break;
case 4:
opName = "Адаптивность";
break;
case 5:
opName = "Обнаруживаемость";
break;
case 6:
opName = "Производительность";
break;

}
return opName;
}

}
Anthony Bernal Modeling WebSphere Portal Portlets with UML (статья, Сентябрь 2002)
Хабар Заман Ахмед, Кэри Е. Амриш Разработка корпоративных Java-приложений с помощью J2EE и UML
. Ted Buckner, Stephan Hesmer, Peter Fischer, Ingo Schuster Portlet Development Guide March 2003
24

Список литературы

СПИСОК ЛИТЕРАТУРЫ
1. Пол Дж. Перроун, Венката С. Р. “Кришна” Р. Чаганти Создание кор-поративных систем на основе Java 2 Enterprise Edition
2. Хабар Заман Ахмед, Кэри Е. Амриш Разработка корпоративных Java-приложений с помощью J2EE и UML
3. Джеффри Рихтера Программирование на платформе .NET
4. Девид М. Гери Java Server Pages Издательский дом “Вильямс” 2002
5. Eric Marc Loebenberg Microsoft .NET or Java 2 Enterprise Edition (стаьтя 2001 год)
6. Using Data Access Beans in WebSphere Studio Presented by DB2 Devel-oper Domain
http://www7b.software.ibm.com/dmdd/
7. Juan R. Rodriguez, Serena Chan, Belen Gonzalez, George Kroner, Monica Parlangelo,
Sandro Schwedler, Andre Venancio IBM WebSphere Portal V5 A Guide for Portlet Application
Development http://www.ibm.com/redbooks
8. Anthony Bernal Modeling WebSphere Portal Portlets with UML (статья, Сентябрь 2002)
Пожалуйста, внимательно изучайте содержание и фрагменты работы. Деньги за приобретённые готовые работы по причине несоответствия данной работы вашим требованиям или её уникальности не возвращаются.
* Категория работы носит оценочный характер в соответствии с качественными и количественными параметрами предоставляемого материала, который не является научным трудом, не является выпускной квалификационной работой и представляет собой результат обработки, структурирования и форматирования собранной информации, но может использоваться в качестве источника для подготовки работы указанной тематики.
Сколько стоит
консультация по подготовке материалов?
1
Заполните заявку - это бесплатно и ни к чему вас не обязывает. Окончательное решение вы принимаете после ознакомления с условиями выполнения работы.
2
Менеджер оценивает работу и сообщает вам стоимость и сроки.
3
Вы вносите предоплату 25% и мы приступаем к работе.
4
Менеджер найдёт лучшего автора по вашей теме, проконтролирует выполнение работы и сделает всё, чтобы вы остались довольны.
5
Автор примет во внимание все ваши пожелания и требования вуза, оформит работу согласно ГОСТ, произведёт необходимые доработки БЕСПЛАТНО.
6
Контроль качества проверит работу на уникальность.
7
Готово! Осталось внести доплату и работу можно скачать в личном кабинете.
После нажатия кнопки "Узнать стоимость" вы будете перенаправлены на сайт нашего официального партнёра Zaochnik.com
© Рефератбанк, 2002 - 2018